首页 > 代码库 > 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