在CentOS5.1 上安装 Oracle 10g

前言

     这样的贴子在网上一搜一大把,我也是根据别人介绍的安装方法安装了一遍后补充了一些自己的总结,希望能对各位网友有所帮助.

环境设置

1.            安装CENTOS 5.1

  这个就不用说了,但有一点要注意:为SWAP分配的空间要超过1G,要不然后面装Oralce会因为空间不足而无法安装。

2.            查询所需安装包是否完整

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-libf2c-32 compat-libstdc++-296 compat-libstdc++-33 compat-db compat-readline43

 

按命令提示的下载安装,所需的时间取决于你的网速,我用了大约一个小时的时间。

 

可能安装完了以后用上述命令查看还是会出现某些包没有安装的信息,这个不用理会,据说是rpmBUG

package compat-gcc-c++ is not installed

package compat-libstdc++ is not installed

package compat-libstdc++-devel is not installed

3.            OS参数要求

编辑 /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应用以上参数

 

4.            编辑 /etc/security/limits.conf 行末添加以下内容

#use for oracle

* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

5.            编辑 /etc/pam.d/login 行末添加以下内容

      session required pam_limits.so

6.            编辑 /etc/selinux/config 确保以下内容

  SELINUX=disabled

  关闭SELIINUX

7.            编辑 /etc/profile,在最后加入:

if [ $USER = "oracle" ]; then

         if [ $SHELL = "/bin/ksh" ]; then

                   ulimit -p 16384

                   ulimit -n 65536

         else

                   ulimit -u 16384 -n 65536

         fi

fi

8.            oracle安装文件复制到 /tmp/database目录下。

9.            因为默认centos5.1不支持10.2,0.1,修改安装文件

  编辑 /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

10.      修改目录权限

 

  #chmod -R 777 /tmp/database

 Oracle安装

1.            创建和配置用户

#/usr/sbin/groupadd oinstall

#/usr/sbin/groupadd dba

#/usr/sbin/useradd -m -g oinstall -G dba oracle

#id oracle

  Oracle用户设置密码:

  #passwd oracle

2.            创建安装目录

# mkdir -p /opt/app/oracle

# chown -R oracle:dba /opt/app/oracle

# chmod -R 775 /opt/app/oracle

3.            修改 Oracle 用户 .bash_profile

  # su - oracle

$ vi ./.bash_profile

   添加

   export ORACLE_BASE=/opt/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0.1

export ORACLE_SID=orcl

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

4.            开始安装

注销然后以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端口。

 

5.            解决dbstart启动问题

安装完后重新启动系统,以root用户登录,打开一个终端,在终端中以oracle用户运行命令启动oracle数据库

# su - oracle

# dbstart

  提示打开 /ade/vikrkuma_new/oracle/bin/tnslsnr 失败

  编辑 /u01/app/oracle/product/10.2.0.1/bin/dbstart

  查找:

   # 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/10.2.0.1:Y

 

保存退出,然后再执行dbstart,启动成功。

 

配置自动启动oracle的脚本

编辑etc/rc.d/rc.local

echo "Starting ORACLE 10g:"

su - oracle -c "//u01/app/oracle/product/10.2.0.1/bin/lsnrctl start"

su - oracle -c "/u01/app/oracle/product/10.2.0.1/bin/dbstart"

 

保存退出,下次重启centos的时候,oracle数据库也会自动启动

你可能感兴趣的:(oracle,linux,centos,redhat,gcc)