首页 >数据库 >mysql教程 > 在OEL6.1下安装ORACLE 11G R2

在OEL6.1下安装ORACLE 11G R2

WBOY
WBOY原创
2016-06-07 17:40:07751浏览

这次安装oracle选择的是oracle11.2.0.3版本,下载的安装包总共有7个,单独安装数据库需要使用前两个,具体安装步骤如下:1.将数据库文件复制到服务器上cpp1040453

这次安装oracle选择的是oracle 11.2.0.3版本,香港服务器租用,下载的安装包总共有7个,单独安装数据库需要使用前两个,具体安装步骤如下:

1. 将数据库文件复制到服务器上
cp p10404530_112030_Linux-x86-64_{1,2,}* /u01/

2. 解压数据库文件
unzip p10404530_112030_Linux-x86-64_1of7.zip
unzip p10404530_112030_Linux-x86-64_2of7.zip

3. 检查/etc/hosts
注意将主机名的对应信息加入hosts文件

关闭sendmail 与iptables

Chkconfig –list iptables

Chkconfig –list sendmail

service sendmail stop

service iptables stop

4. 创建用户和组
useradd oracle

passwd oracle

groupadd dba

usermod -G dba oracle

chown -R oracle:dba /u01/
chmod –R 755 /u01/

检查以下补丁是否已经安装(挂载iso文件,使用mount –o loop 路径 /mnt/iso)

binutils-2.15.92.0.2-18

compat-libstdc++-33.2.3-47.3

elfutils-libelf-0.97-5

elfutils-libelf-devel-0.97-5

glibc-2.3.9.4-2.19

glibc-common-2.3.9.4-2.19

glibc-devel-2.3.9.4-2.19

gcc-3.4.5-2

gcc-c++-3.4.5-2

libaio-devel-0.3.105-2

libaio-0.3.105-2

libgcc-3.4.5

libstdc++-3.4.5-2

libstdc++-devel-3.4.5-2

make-3.80-5

sysstat-5.0.5

unixODBC-2.2.11

unixODBC-devel-2.2.11
[root@erp1 Packages]# rpm -ivh binutils-2.20.51.0.2-5.28.el6.x86_64.rpm compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm elfutils-libelf-0.152-1.el6.x86_64.rpm elfutils-libelf-devel-0.152-1.el6.x86_64.rpm glibc-common-2.12-1.47.el6.x86_64.rpm glibc-devel-2.12-1.47.el6.x86_64.rpm gcc-4.4.6-3.el6.x86_64.rpm gcc-c++-4.4.6-3.el6.x86_64.rpm libaio-devel-0.3.107-10.el6.x86_64.rpm libaio-0.3.107-10.el6.x86_64.rpm libgcc-4.4.6-3.el6.x86_64.rpm libstdc++-4.4.6-3.el6.x86_64.rpm libstdc++-devel-4.4.6-3.el6.x86_64.rpm make-3.81-19.el6.x86_64.rpm sysstat-9.0.4-18.el6.x86_64.rpm unixODBC-2.2.14-11.el6.x86_64.rpm unixODBC-devel-2.2.14-11.el6.x86_64.rpm compat-libcap1-1.10-1.x86_64.rpm compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm ksh-20100621-12.el6.x86_64.rpm libaio-devel-0.3.107-10.el6.x86_64.rpm

5. 修改/etc/sysctl.conf,加入以下内容:

kernel.shmmax = 4294967295

# Controls the maximum number of shared memory segments, in pages

kernel.shmall = 2097152

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 = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 262144

结束后,执行

/sbin/sysctl -p

6. 修改/etc/security/limits.conf,加入内容

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

7. 修改/etc/pam.d/login,加入内容

session required /lib/security/pam_limits.so //对64位系统这条不需要

session required pam_limits.so

8. 修改/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

9. 使用oracle用户登录,修改.bash_profile文件

su - oracle

vi .bash_profile 加入以下内容

#DISPLAY=localhost:0.0

#export DISPLAY

export ORACLE_SID=center

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0./db_1

export ORA_CRS_HOME=/u01/app/product/crs_1

export ORACLE_ADMIN=$ORACLE_BASE/admin

export ORACLE_HOME_LISTNER=$ORACLE_HOME

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

export JAVA_HOME=$ORACLE_HOME/jdk

export PATH=$PATH:$ORACLE_HOME/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/lib:$JAVA_HOME/bin:$ORA_CRS_HOME/bin:
相关参数文件的内容解释:

a) vi /etc/sysctl.conf
kernel.shmall为物理内存除以pagesize;

kernel.shmmax为物理内存的一半;

fs.file-max为512 乘以 processes (如128个process则为 65536);

net.ipv4.ip_local_port_range/net.core.rmem_default/net.core.rmem_max三个参数设置和官方文档不一样, 这是根据metalink 343431.1 最新要求更改的;

net.ipv4.tcp_rmem/net.ipv4.tcp_wmem两个参数一般情况下无需设置, 除非是在Dataguard/Streams等需很多网络传输情况下;

其它参数根据官方文档要求设置即可.

# vi /etc/sysctl.conf

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 = 9000 65000

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 262144

修改以后让参数生效:

# /sbin/sysctl -p

Shmmax 是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值,

shmmax 设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,香港虚拟主机,这样可能导致系统性能的下降。

kernel.shmall 参数是控制共享内存页数。Linux 共享内存页大小为4KB, 共享内

存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是 16GB/4KB=16777216KB/4KB=4194304 (页),也就是64Bit 系统下16GB 物理内存,设置 kernel.shmall = 4194304 才符合要求(几乎是原来设置2097152 的两倍)。这时可以将shmmax 参数调整到 16G 了,同时可以修改SGA_MAX_SIZE 和SGA_TARGET 为 12G(您想设置的SGA 最大大小,当然也可以是2G~14G 等,还要协调PGA参数及OS 等其他内存使用,不能设置太满,比如16G)。

kernel.shmmni ----

shmmni 内核参数是共享内存段的最大数量(注意这个参数不是 shmmin,是

shmmni, shmmin 表示内存段最小大小 ) 。shmmni 缺省值 4096 ,一般肯定是够用了 。

在安装Oracle 之前通常需要设置kernel.sem这个参数,下面对些作简单介绍:

sem其实是semaphores的缩写,查看当前设置

[Oracle@ebsse oracle]$ cat /proc/sys/kernel/sem

250 32000 100 128

4个数据分别对应

SEMMSL SEMMNS SEMOPM SEMMNI

如当Oracle DB初始化参数文件中PROCESSES参数设置较大时,需要调整SEMAPHORES设置

SEMMSL应该设置为服务器中各个实例中最大的PROCESSES参数+10,例如,当最大的PROCESSES参数为5000时,SEMMSL应设置为5010。

SEMMNS参数应设置为SEMMSL*SEMMNI,接上例SEMMSL为5010,SEMMNS参数应为(5010*128)=641280。

SEMOPM参数应设置与SEMMSL参数相同,接上例此处应设置为5010

更改当前SEMAPHORES参数设置:

[Oracle@ebsse oracle]$ su

Password:

[root@ebsse Oracle]# echo "5010 641280 5010 128" > /proc/sys/kernel/sem

[root@ebsse Oracle]# cat /proc/sys/kernel/sem

5010 641280 5010 128

如需启动时自动应用,可在/etc/sysctl.conf增加:

kernel.sem =5010 641280 5010 128

SEMMNI 100 Defines the maximum number of semaphore sets in the entire system.

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn