首页 > 代码库 > Redhat Linux 下安装Oracle 11g R2

Redhat Linux 下安装Oracle 11g R2

官方文档:http://docs.oracle.com/cd/E11882_01/nav/portal_11.htm

1:基本环境

Redhat Enterprise Linux 6.132bit

内存:1GB

磁盘空间:30GB

2:检查Oracle 11g所需的包,如果没有在Redhat Enterprise Linux 6.1的安装光盘里找,然后安装。

ORACLE官方提供:http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm

·        binutils-2.20.51.0.2-5.11.el6 (x86_64)

·        compat-libcap1-1.10-1 (x86_64)

·        compat-libstdc++-33-3.2.3-69.el6 (x86_64)

·        compat-libstdc++-33-3.2.3-69.el6.i686

·        gcc-4.4.4-13.el6 (x86_64)

·        gcc-c++-4.4.4-13.el6 (x86_64)

·        glibc-2.12-1.7.el6 (i686)

·        glibc-2.12-1.7.el6 (x86_64)

·        glibc-devel-2.12-1.7.el6 (x86_64)

·        glibc-devel-2.12-1.7.el6.i686

·        ksh

·        libgcc-4.4.4-13.el6 (i686)

·        libgcc-4.4.4-13.el6 (x86_64)

·        libstdc++-4.4.4-13.el6 (x86_64)

·        libstdc++-4.4.4-13.el6.i686

·        libstdc++-devel-4.4.4-13.el6 (x86_64)

·        libstdc++-devel-4.4.4-13.el6.i686

·        libaio-0.3.107-10.el6 (x86_64)

·        libaio-0.3.107-10.el6.i686

·        libaio-devel-0.3.107-10.el6 (x86_64)

·        libaio-devel-0.3.107-10.el6.i686

·        make-3.81-19.el6

·        sysstat-9.0.4-11.el6 (x86_64)

 

网友提供:

1,binutils-2.17.50.0.6 binutils-2.20.51.0.2-5.20.el6.x86_64.rpm

2,compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm

3,elfutils-libelf-0.125 elfutils-libelf-0.152-1.el6.x86_64.rpm

4,elfutils-libelf-devel-0.125  elfutils-libelf-devel-0.152-1.el6.x86_64.rpm

5,elfutils-libelf-devel-static-0.125

6,gcc-4.1.2  gcc-4.4.5-6.el6.x86_64.rpm

7,gcc-c++-4.1.2  gcc-c++-4.4.5-6.el6.x86_64.rpm

8,glibc-2.5-24  glibc-2.12-1.25.el6.x86_64.rpm

9,glibc-common-2.5  glibc-common-2.12-1.25.el6.x86_64.rpm

10,glibc-devel-2.5  glibc-devel-2.12-1.25.el6.x86_64.rpm

11,glibc-headers-2.5 glibc-headers-2.12-1.25.el6.x86_64.rpm

12,kernel-headers-2.6.18 kernel-headers-2.6.32-131.0.15.el6.x86_64.rpm

13,ksh-20060214  ksh-20100621-6.el6.x86_64.rpm

14,libaio-0.3.106  libaio-0.3.107-10.el6.x86_64.rpm

15,libaio-devel-0.3.106 libaio-devel-0.3.107-10.el6.x86_64.rpm

16,libgcc-4.1.2  libgcc-4.4.5-6.el6.x86_64.rpm

17,libgomp-4.1.2  libgomp-4.4.5-6.el6.x86_64.rpm

18,libstdc++-4.1.2   libstdc++-4.4.5-6.el6.x86_64.rpm

19,libstdc++-devel-4.1.2 libstdc++-devel-4.4.5-6.el6.x86_64.rpm

20,make-3.81  make-3.81-19.el6.x86_64.rpm

21,sysstat-7.0.2  sysstat-9.0.4-18.el6.x86_64.rpm

22,unixODBC-2.2.11  unixODBC-2.2.14-11.el6.x86_64.rpm

23,unixODBC-devel-2.2.11 unixODBC-devel-2.2.14-11.el6.x86_64.rpm

2 : 使用 rpm –q 包名 命令检查这些包是否已经安装了:

[root@Pet~]#rpm -q binutils compat-libstdc++elfutils-libelf  elfutils-libelf-develelfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-develglibc-headers  kernel-headers ksh libaiolibaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBCunixODBC-devel mpfr ppl clog-ppl cpp (安装出现错误提示,增加这四个包解决了)

 

3 : 如果检查到包没有安装,使用以下命令安装:

rpm -ivh unixODBC* --nodeps --force

4:指定主机名:

vim  /etc/sysconfig/network

将HOSTNAME改为自己想设定的主机名(如:HJD)

5:修改hosts文件:

vim  /etc/hosts

添加一条:自己的IP   刚设置的主机名   主机简称

注:若要查看自己主机上的IP可用ifconfig –a命令

 

 

6:修改参数

/etc/sysctl.conf             (修改内核参数)

/etc/security/limits.conf    (shell对oracle用户的限制)

/etc/pam.d/login

/etc/profile                 (系统相关的环境变量)

/oracle/.bash_profile    (oracle用户相关的环境变量)

6.1修改/etc/sysctl.conf

使用以下命令:

Vi  /etc/sysctl.conf

修改与添加如下内容:

# Kernel paramaters required by Oracle11g R2

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100128

net.ipv4.ip_local_port_range = 900065500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

注:SHMMAX参数:Linux进程可以分配的单独共享内存段的最大值。一般设置为内存总大小的一半。这个值的设置应该大于SGA_MAX_TARGET或MEMORY_MAX_TARGET的值,因此对于安装Oracle数据库的系统,shmmax的值应该比内存的二分之一大一些。

kernel.shmmax=物理内存*0.8

SHMMNI参数:设置系统级最大共享内存段数量。Oracle10g推荐最小值为4096,可以适当比4096增加一些。

kernel.shmmni=4096

SHMALL参数:设置共享内存总页数。这个值太小有可能导致数据库启动报错。这个值推荐设置为物理内存大小除以分页大小。(分页大小:getconf PAGE_SIZE)

kernel.shmall=物理内存/PAGE_SIZE

SEMMSL参数:设置每个信号灯组中信号灯最大数量,推荐的最小值是250。对于系统中存在大量并发连接的系统,推荐将这个值设置为PROCESSES初始化参数加10。

SEMMNI参数:设置系统中信号灯组的最大数量。Oracle10g和11g的推荐值为142。

SEMMNS参数:设置系统中信号灯的最大数量。推荐SEMMNS的值就设置为SEMMSL*SEMMNI,Oracle推荐SEMMNS的设置不小于32000。

 

SEMOPM参数:设置每次系统调用可以同时执行的最大信号灯操作的数量。Oracle验证的10.2和11.1的SEMOPM的配置为100。

kernel.sem=610 86620 100 142 (对应的4个值从左到右分别为SEMMSL、SEMMNS、SEMOPM和SEMMNI))

保存退出,执行以下命令,使设置的内核参数生效

/sbin/sysctl –p/ect/sysctl.conf或sysctl –p

6.2修改/etc/security/limits.conf

vi  /etc/security/limits.conf

在文件的末尾加入以下内容:

oracle  soft   nproc   2047

oracle  hard   nproc   16384

oracle  soft   nofile  1024

oracle   hard  nofile  65536

6.3修改/etc/pam.d/login

vi   /etc/pam.d/login

在这个文件中添加以下内容:

session required/lib/security/pam_limits.so

6.4修改/etc/profile

vi /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

6.5修改/opt/oracle/.bash_profile

在修改/opt/oracle/.bash_profile之前需要做以下操作:

①创建用户组和用户,作为软件安装和支持组的拥有者

groupadd oinstall

groupadd dba

useradd -g oinstall -G dbaoracle   这两个G可以全是小写

[root@ Pet /]# useradd-g oinstall -G dba -d /home/oracle oracle( 添加oracle用户到oinstall组dba副组 到/Oracle_11g /oracle目录中 )

根目录是 / Oracle_11g /oracle, 主的组是 oinstall 副的组是dba

[root@ Pet /]# passwd oracle(设置密码)

②创建软件安装目录

mkdir -p /Oracle_11g/oracle     (-p 确保目录名称存在,不存在的就建一个)

[root@ Pet /]# chown-R oracle:oinstall /home/oracle

[root@ Pet /]# chown -R oracle:oinstall /home/oracle/app

 

7:将linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip两个安装文件上传到RedhatEnterprise Linux 6.1的/home/oracle目录下。

[root@Pet ~]#cd /home/oracle

使用以下命令解压缩这两个压缩包:

[root@Pet Oracle_11g]#unzip linux_11gR2_database_1of2.zip

[root@Pet Oracle_11g]#unzip linux_11gR2_database_2of2.zip

[root@ Pet /]# chown-R oracle:oinstall /home/oracle/database

[root@ Pet /]# chmod-R 755 /home/oracle/

这里的R要大写。

③切换到oracle用户下

su - oracle

passwd:输入oracle的密码

vi  .bash_profile

在文件中加入和修改以下内容:      

ORACLE_BASE=(oracle的安装目录的上一级目录)

ORACLE_HOME=$ORACLE_BASE/oracle

ORACLE_SID=(实例名)

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

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

LANG=C  设定此参数避免安装过程出现乱码但会使Oracle权限的的终端是英文的,如果要使用中文的,把这个去掉就可以了,但有的系统下会乱码

export ORACLE_BASE ORACLE_HOMEORACLE_SID PATH LD_LIBRARY_PATH LANG

保存退出,再执行以下命令,让其生效

[oracle@localhost ~]$. . /bash_profile

以root身份打开另一个终端窗口
--这步至关重要,不执行这步在以oracle用户运行 #./runInstaller时会启动不了图型安装界面

#export DISPLAY=:0.0
#xhost +
#xhost + localhost

 

#su - oracle
cd database/
./runInstaller

 

7:开始安装Oracle 11gR2


使用oracle用户进入图形界面,打开终端并转到database目录下,输入./runInstaller启动图形安装界面。


去除图中这个钩,然后点击下一步。


点击是。


选择只安装数据库软件。


选择单数据库安装。


选择简体中文语言。


选择企业版。


选择Oracle安装目录,安装目录需要与/oracle/.bash_profile文件中ORACLE_BASE=(oracle的安装目录的上一级目录)和ORACLE_HOME=$ORACLE_BASE/oracle对应。

 

然后再点击下一步。


单击下一步。


勾选忽略所有,然后单击下一步。


点击完成,进入安装状态。

 

出现这个错误,是缺少包的问题:rpm - q mpfr pplclog-ppl cpp 找到这四个包,分别安装下,然后再点“Retry”疾苦

如果还是不能解决,请按下面顺序依次运行:

# rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm
# rpm -ivhkernel-headers-2.6.32-131.0.15.el6.x86_64.rpm
# rpm -ivhlibgcc-4.4.5-6.el6.x86_64.rpm
# rpm -ivhglibc-2.12-1.25.el6.x86_64.rpm
# rpm -ivhlibgomp-4.4.5-6.el6.x86_64.rpm
# rpm -ivhnscd-2.12-1.25.el6.x86_64.rpm
# rpm -ivhglibc-headers-2.12-1.25.el6.x86_64.rpm 
# rpm -ivhglibc-devel-2.12-1.25.el6.x86_64.rpm 
# rpm -ivhmpfr-2.4.1-6.el6.x86_64.rpm
# rpm -ivhppl-0.10.2-11.el6.x86_64.rpm
# rpm -ivhcloog-ppl-0.15.7-1.2.el6.x86_64.rpm
# rpm -ivhcpp-4.4.5-6.el6.x86_64.rpm
# rpm -ivhgcc-4.4.5-6.el6.x86_64.rpm
注:以上是安装gcc,软件安装顺序不能错。
# rpm -ivhlibstdc++-4.4.5-6.el6.x86_64.rpm
# rpm -ivhlibstdc++-devel-4.4.5-6.el6.x86_64.rpm
# rpm -ivhgcc-c++-4.4.5-6.el6.x86_64.rpm
注:以上是安装gcc-c++

参考:http://blog.csdn.net/paullmq/article/details/8568604


 

安装到这里会有两个脚本需要用root用户运行的。打开XShell,以root用户运行这两个脚本。

[root@Pet ~]#/oraInventory/orainstRoot.sh

[root@Pet ~]# /Oracle_11g/oracle/root.sh


待脚本运行完后,Oracle 11g R2数据库软件已经安装完成。

安装完后点击关闭退出安装界面。

8:设置监听器


在终端中使用netca命令启动创建监听器。




设置监听器名称。

以下就和windows上的操作一致...

9:创建数据库实例


在终端中使用dbca命令启动创建数据库实例。

设置填写实例名,实例名需要与/oracle/.bash_profile文件中ORACLE_SID=(实例名)对应。

一下就和windows上的操作一致...

至此在Redhat EnterpriseLinux 6.1下安装Oracle 11g R2已全部完成。

配置完成后,使用如下命令启动EM控制台:

[oracle@oracle11g ~]$ emctl start dbconsole 

http://localhost:1158/em/

访问web企业管理页面

 

Redhat Linux 下安装Oracle 11g R2