分类: Oracle
2008-09-19 13:44:02
在CentOS5.1 上安装 Oracle
这样的贴子在网上一搜一大把,我也是根据别人介绍的安装方法安装了一遍后补充了一些自己的总结,希望能对各位网友有所帮助.
这个就不用说了,但有一点要注意:为SWAP分配的空间要超过
以root用户在终端中执行以下命令:
rpm -q gcc make binutils openmotif setarch compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
如果没有安装这些包的话,可以在CentOS安装光盘的CentOS目录下找到相应的rmp文件来安装,如果你的服务器可以联网的话,也可以通过yum的方式下载安装,我就是用yum安装的,在终端中执行以下命令:
yum install compat-gcc-32 compat-gcc-32-c++ compat-gcc-32-g77 compat-libf
按命令提示的下载安装,所需的时间取决于你的网速,我用了大约一个小时的时间。
可能安装完了以后用上述命令查看还是会出现某些包没有安装的信息,这个不用理会,据说是rpm的BUG。
package compat-gcc-c++ is not installed
package compat-libstdc++ is not installed
package compat-libstdc++-devel is not installed
编辑 /etc/sysctl.conf (用vi或文本编辑器都可以), 在行末添加以下内容
#use for oracle
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
再运行sysctl -p应用以上参数
#use for oracle
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
session required pam_limits.so
SELINUX=disabled
关闭SELIINUX
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
编辑 /10201_database_linux32/database/install/oraparam.ini
### #[Certified Versions]
Linux=redhat-3,SuSE-9,redhat-4,centos-5,UnitedLinux-1.0,asianux-1,asianux-2
再添加
[Linux-centos-5.1-optional]
TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256
#chmod -R 777 /tmp/database
#/usr/sbin/groupadd oinstall
#/usr/sbin/groupadd dba
#/usr/sbin/useradd -m -g oinstall -G dba oracle
#id oracle
为Oracle用户设置密码:
#passwd oracle
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01/app/oracle
# su - oracle
$ vi ./.bash_profile
添加
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
注销然后以oracle用户登录(如果你不重新登录而直接在终端中通过 “su – oracle” 切换到Oracle用户安装的话,可能会出现display设置错误的提示而无法安装)
打开一个终端,执行以下命令开始安装
# cd /tmp /databases
# export LANG=en_US
# ./runInstaller
如果你的安装过程中还出现错误的话,应该是还有一些包没打上,这时你不必终止安装过程,而是打开另一个终端,以root用户身份再去查检安装最前面所说的那些包,如果这些包都装好了,再回到oracle安装程序,在出错提示框点击 “Retry” 即可继续安装,直到成功。
安装完后orcl数据库也已经启动。你可以在其它机器上配置netmanager测试一下是否能连接,如果其它机器没有装oracle客户端,也可以通过telnet命令测试一下1521端口是否可以连接(假如你安装了oracle的服务器的地址是192.168.1.1):
telnet 192.168.1.1 1521
如果进入黑屏,则基本上说明1521端口是通的,也就是说你的orale可以正常使用了。
如果不能连接,很可能是防火墙的问题。在服务器菜单中打开 “系统/管理/安全级别和防火墙”,然后添加1521端口。
安装完后重新启动系统,以root用户登录,打开一个终端,在终端中以oracle用户运行命令启动oracle数据库
# su - oracle
# dbstart
提示打开 /ade/vikrkuma_new/oracle/bin/tnslsnr 失败
编辑 /u01/app/oracle/product/
查找:
# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
应该是在78行,将其改为:
# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$ORACLE_HOME
但是重新运行dbstart时,没有提示出错,但立刻就执行完了,用lsnrctl status命令查看发现数据库实例还是没有启动。在分析dbstart脚本后发现还要记取 /etc/oratable配置文件,于是打开这个文件,将最后一行的最后一个字符由 “N” 改为 “Y”,如下:
orcl: /u01/app/oracle/product/
保存退出,然后再执行dbstart,启动成功。
编辑etc/rc.d/rc.local
echo "Starting ORACLE
su - oracle -c "//u01/app/oracle/product/
su - oracle -c "/u01/app/oracle/product/
保存退出,下次重启centos的时候,oracle数据库也会自动启动
songbei6注:安装过程中可能有版本问题,只要修改/etc/redhat-release文件,为redhat-4即可.这样第九步可省略。