RedHat AS5 下安装oracle11g R2(转)
??????? if [ $SHELL = "/bin/ksh" ]; then
????????????? ulimit -p 16384
????????????? ulimit -n 65536
??????? else
????????????? ulimit -u 16384 -n 65536
??????? fi
fi
?
3、创建安装数据库时所需要使用的用户组oinstall,dba及Oracle用户,并将oinstall,dba组定义成oracle用户的主次组。命令参考如下:
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle (设定oracle用户为oinstall、dba、oper用户组的成员)
passwd oracle (设定oracle用户的密码)
4、以root用户身份登录系统创建Oracle系统的安装目录和数据库文件存放的目录。例如:/oracle,及改变以上目录的属性命令参考如下:
# mkdir -p /home/oracle/app/oracle (创建数据目录)
# chown -R oracle.oinstall /home/oracle/app/oracle (设定目录所属的用户组和用户)
# chmod -R 775 /home/oracle/app/oracle (设定目录的读写权限)
5、以oracle 用户身份登录系统,复制和解压10201_database_linux32.zip文件到/home/oracle下:
# cp 10201_database_linux32.zip /home/oracle/ (复制文件到oracle个人目录内)
# unzip /home/oracle/10201_database_linux32.zip (解压zip文件)
6、配置oracle用户环境,以oracle用户登录,修改oracle用户下的 .bash_profile 文件。增加以下参数:
vi .bash_profile (执行vi命令来修改.bash_profile)
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
# 以下是我们所需配置的内容
#Install oracle setting
export ORACLE_BASE=/home/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl11g
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG="SIMPLIFIED CHINESE_CHINA".ZHS16GBK
umask 022
stty erase ^H
7、重新启动操作系统:
# reboot (重新启动命令)
特别说明:因为安装Oracle软件时不可使用root(超级用户)来进行安装,只可以使用刚才新建的oracle用户来进行安装,请大家一定要注意!
?
三、Oracle数据库软件安装
重新启动操作系统后,使用oracle用户登陆操作系统进行Oracle数据库的正确安装:
然后以oracle用户登录用ftp软件上传linux_11gR2_database_1of2.zip,linux_11gR2_database_2of2.zip软件包
打开终端,然后用以下命令解压
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
安装数据库软件
cd database
./runInstaller
1.经过一小段的时间,会出现“配置安全更新”的信息窗口,全部清空,继续安装请单击“下一步(N)”按键,弹出对话框,选择“是”
2.安装选项 选择“仅安装数据库软件”,继续安装请单击“下一步(N)”按键
3.网格选项 选择“单实例数据库安装”,继续安装请单击“下一步(N)”按键
4.产品语言 选择“简体中文和英语”,继续安装请单击“下一步(N)”按键
5.数据库版本 选择“企业版(3.95GB)(E)”,继续安装请单击“下一步(N)”按键
6.安装位置? Oracle基本目录:/home/oracle/app/oracle;软件位置:/home/oracle/app/oracle/product/11.2.0/dbhome_1 ,继续安装请单击“下一步(N)”按键
7.创建产品清单?清单目录:/home/oracle/app/oraInventory;oraInventory组名:oinstall,继续安装请单击“下一步(N)”按键
8.操作系统组? 数据库管理员(OSDBA)组:dba,数据库操作者(OSOPER)组:oper,继续安装请单击“下一步(N)”按键
9.先决条件检查:如果之前没有设置内核参数等,会这里检查失败,失败的话可以在这里选择“修补并再次检查”按键,打开一个提示执行修复脚本。然后按上面提示在root下执行。
打开另一个终端
su - root
/tmp/CVU_11.2.0.1.0_oracle/runfixup.sh? #执行修复脚本
点确定,此时刚才的内核参数全部修复完毕,如果是物理内存和交换空间大小,可以“全部忽略”打上钩。
继续安装请单击“下一步(N)”按键
10 概要 确认一下安装信息,点“完成”开始安装。
11 安装到94%的时候,对弹出一个“执行配置脚本”对话框,要求在root下需执行脚本,打开另一个终端
su root
/home/oracle/app/oraInventory/orainstRoot.sh
/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
一直按Entel键,执行完毕返回对框点“确定”继续。
12 完成 提示Oracle Database 安装 已成功。 点关闭退出安装。
四、配置Listener
以oracl用户登录,打开终端,输入netca
netca
选择监听程序配置,然后按默认一直点下一步。
五、创建数据库
以oracl用户登录,打开终端,输入dbca
dbca
1.等一段时间出现欢迎界面,点下一步继续;
2.选择创建数据库,点下一步继续;
3.定制数据库,点下一步继续;
4.全局数据库名:orcl11g,SID:orcl11g,点下一步继续;
5.配置 Enterpris Manager 打上钩,自动维护任务可以根据实际需要是否启用,如果有专职dba,可以把“启用自动维护任务”钩取消,点下一步继续;
6.输入密码,点下一步继续;
7.存储类型:文件系统,点下一步继续;
8.选择数据库的恢复选项,根据需要是否启用归档,点下一步继续;
9.数据库组件,保留“Enterprise Manager 资料档案库”,其他组件都不需要,点标准数据库组件取消所有组件,点下一步继续;
10 内存,选择物理内存一半,字符集,选择默认ZHS16GBK,点下一步继续;
11 确认数据库安装这些表空间信息,一般保持默认,点下一步继续;
12 如果需要用脚本创建数据库,“生成数据库脚本创建脚本”打上钩,点完成弹出一个确认对话框,点确定开始创建数据库。
?
六、测试数据库
用oracle 数据库用户登录,输入如下命令
$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on 星期六 3月 6 01:51:30 2010
Copyright (c) 1982, 2009, Oracle.? All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select * from v$version;?--查看版本号
BANNER
--------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
PL/SQL Release 11.2.0.1.0 - Production
CORE??? 11.2.0.1.0????? Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
如果连接报是"已连接到空闲例程",请查看环境变量ORACLE_SID和自己创建数据库是否一至。
七、手工启动和关闭数据库
1. 启动Oracle 数据库
用oracle用户登录,首先检查一下环境变量ORACLE_SID是否和自己要设置环境变量相同,如果不相同,请用export命令来设置。
$ export ORACLE_SID=gbk11g?? ?#设置环境变量
$ sqlplus / as sysdba??#启动sqlplus
SQL*Plus: Release 11.2.0.1.0 Production on 星期六 3月 6 01:56:43 2010
Copyright (c) 1982, 2009, Oracle.? All rights reserved.
已连接到空闲例程。
SQL> startup ??--启动数据库命令
ORACLE 例程已经启动。
Total System Global Area? 523108352 bytes
Fixed Size????????????????? 1337632 bytes
Variable Size???????????? 369100512 bytes
Database Buffers????????? 146800640 bytes
Redo Buffers??????????????? 5869568 bytes
数据库装载完毕。
数据库已经打开。
?
2.关闭数据库
用oracle用户登录,首先检查一下环境变量ORACLE_SID是否和自己要设置环境变量相同,如果不相同,请用export命令来设置。
$ export ORACLE_SID=gbk11g??#设置环境变量
$ sqlplus / as sysdba???#启动sqlplus
SQL*Plus: Release 11.2.0.1.0 Production on 星期六 3月 6 01:56:18 2010
Copyright (c) 1982, 2009, Oracle.? All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> shutdown immediate???--关闭数据库命令
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
?
3. 手工启动Oracle监听程序
用oracle用户登录 ,在控制台输入如下命令
$ lsnrctl
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 06-3月 -2010 02:02:47
Copyright (c) 1991, 2009, Oracle.? All rights reserved.
欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL> start
将出现监听程序的一系列启动和配置情况信息列表。
信息行的最后一行是“The command completed successfully”字样时,监听程序启动成功。
4. 关闭Oracle监听程序
运行stop命令关闭监听程序。
LSNRCTL> stop
5.查看监听程序是否启动
LSNRCTL> status
八、设置oracle自动启动与关闭
以下操作用root用户登录
1、编辑 /etc/oratab,把所有的 instance 的重启动标志设置成 'Y',如:
orcl11g:/home/oracle/app/oracle/product/11.2.0/dbhome_1:Y
2、做一个启动脚本 /etc/init.d/oracle ,如下所示:
#!/bin/sh
# chkconfig: 345 99 10
# description: script for the Oracle Instance, Listener
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.
ORA_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
ORA_OWNER=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME"
;;
'restart')
$0 stop
$0 start
;;
esac
在脚本中以下两行必须存在
# chkconfig: 345 99 10
# description: script for the Oracle Instance, Listener?
------------------备注说明---------------------------------
# chkconfig: 345 99 10
指出3,4,5级别启动这个服务,99是在相应的/etc/rc.d/rcN.d(N为前面指定的
级别,这里是345)目录下生成的链接文件的序号(启动优先级别)S99oracle,
10为在除前面指出的级别对应的/etc/rc.d/rcN.d(N为除345之外的级别)目录生成的
链接文件的序号(服务停止的优先级别)K10oracle
3、赋予执行权限
chmod 751 /etc/init.d/oracle
4、添加服务
chkconfig --add oracle? #添加服务
chkconfig --list oracle #查看服务
chkconfig --del oracle? #删除服务
5、启动服务
添加服务服务后,不会立即启动服务,如果需要立即启动服务,需要执行
service oracle start?#启动服务
service oracle stop?#停止服务
service oracle restart #重启服务
?
?
?