ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux (RHEL 5.4)下安装 Oracle 10g R2

Linux (RHEL 5.4)下安装 Oracle 10g R2

原创 Linux操作系统 作者:beatony 时间:2011-07-29 14:05:21 0 删除 编辑
Linux (RHEL 5.4)下安装 Oracle 10g R2
分类: Oracle 安装卸载 2200人阅读 评论(0) 收藏 举报

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2010/03/30/5431428.aspx
    
     虽然 Oracle 10g Database Release 2 已经推出几年了,但这个版本仍然为很多初学者学习的版本,下面详细讲述了安装 Oracle 10g 的步骤。

一、 linux 的版本选用

    目前 linux(RHEL) 使用的主要版本为 5.4 版,可以到下面的地址下载其安装文件。   
    RHEL5.4 下载   http://download.chinaunix.net/download/0013000/12623.shtml

二、关于 linux 的安装

    很多初学者使用的是 XP 系统上的虚拟机来安装 Linux ,因此本文也是在虚拟机上安装 Linux 然后再安装 Oracle 10g.
至于虚拟机可以使用 VMware 6.5 Workstation 版,这个可以到百度 ,Google 找一下,比较多。安装了 linux 时,我们需要特殊的配置一下 Oracle 的安装环境,关于这个配置 Oracle 安装环境,请参考: VmWare6.5.2下安装 RHEL 5.4(配置 Oracle安装环境)

三、安装 Oracle 前的环境检查

    1. 下载 Oracle 10g R2
       Oracle 10g for Linux   http://www.oracle.com/technology/software/products/database/index.html
    2. 查看 Linux 内核参数,有点多余,作为初学者,还是可以练习一下。请确保高于 2.6.9 -5.0.5.EL 以上内核      
       强烈建议大家安装 SecureCRT 或 VNC 工具,这样不必来回在 XP 和 Linux 下切换。
       uname –r
      
       [root@localhost ~]# uname -r
       2.6.18 -164.el5xen

    3. 查看 CPU 、内存、 Swap 及磁盘可用空间
       内存:至少 1GB ,下图中我的内存仅 900MB
       Swap :一般为可用物理内存的 2 倍,比如设定为 2GB
       /Temp 分区:至少 400MB
       Oracle 安装目录所在的分区:至少 4GB

       [root@localhost ~]# free -m
      
                    total       used       free     shared    buffers     cached
       Mem:           900        568        331          0         56        356
       -/+ buffers/cache:        154        745
       Swap:         2251          0       2251
      
       [root@localhost ~]# df -h
      
       Filesystem            Size  Used Avail Use% Mounted on
       /dev/sda2             6.4G  3.8G  2.3G  63% /
       /dev/sdd1             6.8G  144M  6.3G   3% /u01
       /dev/sdc2             1.2G   34M  1.1G   3% /home
       /dev/sdc1             760M   17M  704M   3% /tmp
       /dev/sda1             456M   18M  415M   5% /boot
       tmpfs                    450M     0  450M   0% /dev/shm
       none                     450M   104K  450M   1% /var/lib/xenstored
       /dev/hdc               2.8G  2.8G     0 100% /media/RHEL_5.4 i386 DVD

四、配置安装环境

    1. 安装补丁包
       关于确认补丁包的是否已安装,可以使用下述方式来查看
       rpm -q gcc make binutils openmotif setarch compat-db compat-gcc /
       compat-gcc-c compat-libstdc compat-libstdc -devel

       关于rpm工具的使用,请参照:RPM使用简介
       我提供的下载地址中 RHEL 5.4 为 ISO 文件,我们可以将其挂载到某一个目录来安装补丁。
       使用 root 帐户创建一个挂载目录
       mkdir /mnt/cdrom
       mount /dev/cdrom /mnt/cdrom


       安装以下所需的包
       cd /mnt/cdrom/Server
       rpm -Uvh setarch-2*
       rpm -Uvh make-3*
       rpm -Uvh glibc-2*
       rpm -Uvh libaio-0*
       rpm -Uvh compat-libstdc++-33-3*
       rpm -Uvh compat-gcc-34-3*
       rpm -Uvh compat-gcc-34-c++-3*
       rpm -Uvh gcc-4*
       rpm -Uvh libXp-1*
       rpm -Uvh openmotif-2*
       rpm -Uvh compat-db-4*

    2. 主机及网络设置
       如果将该机作为服务器,建议使用固定的 IP ,测试环境可以使用动态 IP

       vim /etc/sysconfig/network
      
       NETWORKING=yes
       NETWORKING_IPV6=no
       HOSTNAME=robinson.com
      
       vim /etc/sysconfig/network-scripts/ifcfg-eth0

       以下内容使用动态 IP ,则不需要更改
       # Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
       DEVICE=eth0
       BOOTPROTO=dhcp
       HWADDR=00:0C:29:59:52:BB
       NBOOT=yes
      
       vim /etc/hosts
      
       # Do not remove the following line, or various programs
       # that require network functionality will fail.
       127.0.0.1               localhost.localdomain localhost
       ::1                       localhost6.localdomain6 localhost6
       192.168.1.101          robinson.com robinson

    3. 设置内核参数
       在 sysctl.conf 文件末尾添加如下行
       vim /etc/sysctl.conf
      
       kernel.shmall = 2097152
       kernel.shmmax = 2147483648
       kernel.shmmni = 4096
       # semaphores: semmsl, semmns, semopm, semmni
       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

       运行下面的命令使设置生效: /sbin/sysctl –p

       在 limit.conf 文件末尾添加如下行
       vim /etc/security/limits.conf
      
       * soft nproc 2047
       * hard nproc 16384
       * soft nofile 1024
       * hard nofile 65536

       在 login 文件末尾添加如下行
       vim /etc/pam.d/login
       
       session    required     pam_limits.so
      
       修改 config 文件,使得 SELINUX =disabled
       vim /etc/selinux/config
      
       SELINUX =disabled

    4. 创建帐户及安装目录
       groupadd oinstall
       groupadd dba
       groupadd oper
       useradd -g oinstall -G dba oracle
       passwd oracle
       id oracle

       创建成功后如下 :
       [root@localhost ~]# id oracle
       uid=500(oracle) gid=500(oinstall) groups=500(oinstall),501(dba)
       mkdir -p /u01/app/oracle/
       chown -R oracle:oinstall /u01/app/oracle
       chmod -R 775 /u01/app/oracle


    5. 为 oracle 帐户创建环境变量
       su – oracle
       vim ~/.bash_profile

      
       export ORACLE_BASE=/u01/app/oracle;
       export ORACLE_HOME=$ORACLE_BASE/10g
       export ORACLE_SID=orcl
       PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
       export PATH
       export LANG=en
 
    6. 修改 linux 的版本号(因该版本为 5.4 ,为避免检查无法通过,修改版本号)
       [root@robinson ~]# cat /etc/issue
      
       Red Hat Enterprise Linux Server release 5.4 (Tikanga)
       Kernel /r on an /m
       使用 vim 修改版本号
       vim /etc/issue 
       
       [root@robinson ~]# cat /etc/issue
       Red Hat Enterprise Linux Server release 4.4 (Tikanga)
       Kernel /r on an /m

     7. 执行完上述步骤后建议重新启动 Linux
    
     8. 使用 root 执行 hostx +
       [root@robinson ~]# xhost +
       access control disabled,clients can connect from any host

     9. 如果 oracle 10g 安装文件已下载到 linux 系统中,则使用 unzip 10201_database_linux32.zip 解压到指定文件夹。
本人的安装文件在 windows 系统中,故将其转换成了 ISO 文件,并将其加载到光驱。
      [root@robinson ~]#mount /dev/cdrom /mnt/cdrom
      [oracle@robinson ~]/mnt/cdrom/runInstaller


五、执行安装

       安装结束前执行两个脚本:
       [root@robinson ~]# /u01/app/oracle/oraInventory/orainstRoot.sh
      
       Changing permissions of /u01/app/oracle/oraInventory to 770.
       Changing groupname of /u01/app/oracle/oraInventory to oinstall.
       The execution of the script. is complete
      
       [root@robinson ~]# /u01/app/oracle/10g/root.sh
       Running Oracle10 root.sh script...
       The following environment variables are set as:
           ORACLE_OWNER= oracle
           ORACLE_HOME=  /u01/app/oracle/10g
       Enter the full pathname of the local bin directory: [/usr/local/bin]:
          Copying dbhome to /usr/local/bin ...
          Copying oraenv to /usr/local/bin ...
          Copying coraenv to /usr/local/bin ...
       Creating /etc/oratab file...
       Entries will be added to the /etc/oratab file as needed by
       Database Configuration Assistant when a database is created
       Finished running generic part of root.sh script.
       Now product-specific root actions will be performed.

六、其它

    1.有些操作没有注明,比如创建用户或组,是在root用户#提示符下完成

    2.可以将linux的版本号改回到5.4版

说明:

/etc/sysctl.conf 参数说明 (2011-12-22 11:22)

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 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值

fs.aio-max-nr = 1048576 文件系统最大异步io

这里,对每个参数值做个简要的解释和说明。
(1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G。
(2)shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改。
(3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改。
(4)sem:该参数表示设置的信号量。
(5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。
修改好内核以后,执行下面的命令使新的配置生效。

kernel.shmmax:表示单个共享内存段的最大值,以字节为单位,此值一般为物理内存的一半,不过大一点也没关系,这里设定的为4GB,即"4294967295/1024/1024/1024=4G"。

  kernel.shmmni:表示单个共享内存段的最小值,一般为4kB,即4096bit。来源:www.examda.com

  kernel.shmall:表示可用共享内存的总量,单位是页,在32位系统上一页等于4kB,也就是4096字节。

  fs.file-max:表示文件句柄的最大数量。文件句柄表示在Linux系统中可以打开的文件数量。

  ip_local_port_range:表示端口的范围,为指定的内容。

  kernel.sem:表示设置的信号量,这4个参数内容大小固定。

  net.core.rmem_default:表示接收套接字缓冲区大小的缺省值(以字节为单位)。

  net.core.rmem_max :表示接收套接字缓冲区大小的最大值(以字节为单位)

  net.core.wmem_default:表示发送套接字缓冲区大小的缺省值(以字节为单位)。

  net.core.wmem_max:表示发送套接字缓冲区大小的最大值(以字节为单位)。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22578826/viewspace-703508/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-05-18

  • 博文量
    192
  • 访问量
    455689