1. oracle11g安装环境准备

采用OEL6.5 x64安装,安装过程与Redhat一致,安装过程中选中桌面,开发包,开发库,其它默认选项。  
Desktops > X Window System    
Development > Additional Development    
Development > Development Tools

安装好后:  
(1) 关闭selinux    
(2) 关闭iptables    
(3) 重启

2. 开始安装基础包(放入光盘、或挂载ISO文件)

mount /dev/cdrom /mnt   
cd /mnt/cdrom/Server/Packages    
rpm -Uvh binutils-2*x86_64*    
rpm -Uvh glibc-2*x86_64* nss-softokn-freebl-3*x86_64*    
rpm -Uvh glibc-2*i686* nss-softokn-freebl-3*i686*    
rpm -Uvh compat-libstdc++-33*x86_64*    
rpm -Uvh glibc-common-2*x86_64*    
rpm -Uvh glibc-devel-2*x86_64*    
rpm -Uvh glibc-devel-2*i686*    
rpm -Uvh glibc-headers-2*x86_64*    
rpm -Uvh elfutils-libelf-0*x86_64*    
rpm -Uvh elfutils-libelf-devel-0*x86_64*    
rpm -Uvh gcc-4*x86_64*    
rpm -Uvh gcc-c++-4*x86_64*    
rpm -Uvh ksh-*x86_64*    
rpm -Uvh libaio-0*x86_64*    
rpm -Uvh libaio-devel-0*x86_64*    
rpm -Uvh libaio-0*i686*    
rpm -Uvh libaio-devel-0*i686*    
rpm -Uvh libgcc-4*x86_64*    
rpm -Uvh libgcc-4*i686*    
rpm -Uvh libstdc++-4*x86_64*    
rpm -Uvh libstdc++-4*i686*    
rpm -Uvh libstdc++-devel-4*x86_64*    
rpm -Uvh make-3.81*x86_64*    
rpm -Uvh numactl-devel-2*x86_64*    
rpm -Uvh sysstat-9*x86_64*    
rpm -Uvh compat-libstdc++-33*i686*    
rpm -Uvh compat-libcap*

(1) 确认安装以下包

# rpm -q binutils compat-libstdc++-33 compat-gcc-34-c++ elfutils-libelf 
elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel 
glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp 
libstdc++ libstdc++-devel make sysstat numactl-devel unixODBC 
unixODBC-devel openmotif22 openmotif compat-db libXp

binutils-2.20.51.0.2-5.36.el6.x86_64  
compat-libstdc++-33-3.2.3-69.el6.x86_64    
compat-libstdc++-33-3.2.3-69.el6.i686    
package compat-gcc-34-c++ is not installed    
elfutils-libelf-0.152-1.el6.x86_64    
elfutils-libelf-devel-0.152-1.el6.x86_64    
gcc-4.4.7-4.el6.x86_64    
gcc-c++-4.4.7-4.el6.x86_64    
glibc-2.12-1.132.el6.x86_64    
glibc-2.12-1.132.el6.i686    
glibc-common-2.12-1.132.el6.x86_64    
glibc-devel-2.12-1.132.el6.x86_64    
glibc-devel-2.12-1.132.el6.i686    
glibc-headers-2.12-1.132.el6.x86_64    
kernel-headers-2.6.32-431.el6.x86_64    
ksh-20120801-10.el6.x86_64    
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    
libgcc-4.4.7-4.el6.x86_64    
libgcc-4.4.7-4.el6.i686    
libgomp-4.4.7-4.el6.x86_64    
libstdc++-4.4.7-4.el6.x86_64    
libstdc++-4.4.7-4.el6.i686    
libstdc++-devel-4.4.7-4.el6.x86_64    
make-3.81-20.el6.x86_64    
sysstat-9.0.4-22.el6.x86_64    
numactl-devel-2.0.7-8.el6.x86_64    
package unixODBC is not installed    
package unixODBC-devel is not installed    
package openmotif22 is not installed    
package openmotif is not installed    
package compat-db is not installed    
package libXp is not installed

(2) 安装相关包

# rpm -ivh compat-db-4.6.21-15.el6.x86_64.rpm compat-db42-4.2.52-15.el6.x86_64.rpm compat-db43-4.3.29-15.el6.x86_64.rpm    
# rpm -ivh compat-gcc-34-c++-3.4.6-19.el6.x86_64.rpm compat-gcc-34-3.4.6-19.el6.x86_64.rpm     
# rpm -ivh unixODBC-2.2.14-12.el6_3.x86_64.rpm unixODBC-devel-2.2.14-12.el6_3.x86_64.rpm     
# rpm -ivh openmotif-2.3.3-6.1.el6_4.x86_64.rpm openmotif22-2.2.3-19.el6.x86_64.rpm libXp-1.0.0-15.1.el6.x86_64.rpm

(3) 替换sqlplus工具

# wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz    
# tar zxvf rlwrap-0.37.tar.gz    
# cd rlwrap-0.36    
# ./configure    
# make    
# make check    
# make install

3. 创建oracle安装相关用户组及用户帐号

1)创建oinstall,dba组和oracle用户(用root身份)

groupadd oinstall  
groupadd dba    
useradd -g oinstall -G dba oracle    
passwd oracle

2)创建Oralce HOME目录

mkdir -p /u01/app/oracle/product/11.2.0/db_1  
chmod -R 775 /u01/app    
chown -R oracle:oinstall /u01

 

4. 修改内核支持

# vi /etc/sysctl.conf

fs.aio-max-nr = 1048576  
fs.file-max = 6815744    
kernel.shmall = 2097152    
kernel.shmmax = 2147483648    
kernel.shmmni = 4096    
kernel.sem = 250 32000 100 128    
net.ipv4.ip_local_port_range = 9000 65500    
net.core.rmem_default = 4194304    
net.core.rmem_max = 4194304    
net.core.wmem_default = 262144    
net.core.wmem_max = 1048586

# sysctl -p

内核参数配置说明:    
kernel.shmall = 2097152      # 系统可以使用的共享内存总页数,缺省值就是2097152。    
kernel.shmmax = 2147483648   # 单个共享内存段的最大值,字节为单位, 此例为2GB。    
kernel.shmmni = 4096         # 共享内存段的最大默认数量

 

5. 修改文件描述符

cat >> /etc/security/limits.conf << EOF  
oracle   soft   nproc   2047    
oracle   hard   nproc   16384    
oracle   soft   nofile  1024    
oracle   hard   nofile  65536    
oracle   soft   stack   10240    
EOF

 

6. 修改登陆认证模块

cat >> /etc/pam.d/login << EOF  
session required /lib64/security/pam_limits.so    
EOF

 

7. 修改本地hosts文件

# vi /etc/hosts  
192.168.233.100    vm100

 

8. 修改oracle用户环境变量

(1) 配置系统环境变量,加入到最后。

cat >> /etc/profile << EOF  
if [ \$USER = "oracle" ]; then    
      if [ \$SHELL = "/bin/ksh" ]; then    
          ulimit -p 16384    
          ulimit -n 65536    
      else    
          ulimit -u 16384 -n 65536    
      fi    
fi    
EOF

(2) 配置oracle环境变量

# su - oracle

cat >> /home/oracle/.bash_profile << EOF  
export EDITOR=vi    
export ORACLE_BASE=/u01/app/oracle    
export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db_1    
export ORACLE_SID=orcl    
export PATH=\$ORACLE_HOME/bin:\$PATH    
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"    
export LANG=en_US    
export LC_ALL=en_US    
export LD_LIBRARY_PATH=/lib:/usr/lib:\$ORACLE_HOME/lib    
export CLASSPATH=\$ORACLE_HOME/JRE:\$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib    
alias sqlplus="rlwrap sqlplus"    
alias rman="rlwrap rman"    
umask 022    
EOF    
source .bash_profile

 

9. 拷贝oracle安装包到linux系统中

# mv p13390677_112040_Linux-x86-64_1of7.zip /u01/app/  
# mv p13390677_112040_Linux-x86-64_2of7.zip /u01/app/    
# unzip p13390677_112040_Linux-x86-64_1of7.zip    
# unzip p13390677_112040_Linux-x86-64_2of7.zip

# 解压在/u01/app/database下  
# chown -R oracle:oinstall /u01/app/database/

 

10. 安装oracle11g软件

说明:本文采用本机安装方式,远程安装推荐采用VNC或Xmanager。

# xhost +   
access control disabled, clients can connect from any host
$ su - oracle   
$ cd /u01/Oracle/database    
$ ./runInstaller
最后要在root执行以下两条脚本   
# /u01/app/oraInventory/orainstRoot.sh    
# /u01/app/oracle/product/11.2.0/db_1/root.sh

 

11. 创建监听服务

$ netca  
# 参数一律默认即可    
$ ps -ef |grep ora_

 

12. 创建数据库

$ dbca  
# 选择gernel purpose,在SID和全局名称中,选择你在.bash_profile中创建的SID.    
# 数据库的字符集选项中选择ZHS16GBK, 其它默认OK,完成.

 

13. oracle的启动服务配置

#开机自启动采用rc.local启动方式,没有配置成服务方式,关闭数据库还是手动执行的好。

$ vi /etc/oratab  
#把最后的N改成Y (默认是N)    
orcl:/u01/app/oracle/product/11.2.0/db_1:Y

cat >> /etc/rc.local << EOF  
# Oracle service start    
su - oracle -c "lsnrctl start"    
su - oracle -c "dbstart"    
EOF