1.检查以下程序是否安装

rpm -qa 检查:

mount /dev/cdrom /mnt/cdrom

rpm -ivh 安装:

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

2.创建ORACLE组和用户,安装目录和权限

查看用户vi /etc/group

groupadd dba   --创建DBA组

useradd -G dba oracle  --创建oracle用户并加入组

passwd oracle      --设置密码



useradd oracle

passwd oracle

groupadd dba

usermod -G dba oracle

3. hosts文件 vi  /etc/hosts

 永久主机名 vi  /etc/sysconfig/network

永久ip vi  /etc/sysconfig/network-scripts/ifcfg-eth0    

dns配置 vi   /etc/resolv.conf

设置ip地址与主机名

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

各参数具体含义:

shmmax

  含义:这个设置并不决定究竟Oracle数据库或者操作系统使用多少物理内存,只决定了最多可以使用的内存数目。这个设置也不影

响操作系统的内核资源。

  设置方法:0.5*物理内存

  例子:Set shmsys:shminfo_shmmax=10485760

  shmmin

  含义:共享内存的最小大小。

  设置方法:一般都设置成为1。

  例子:Set shmsys:shminfo_shmmin=1:

  shmmni

  含义:系统中共享内存段的最大个数。

  例子:Set shmsys:shminfo_shmmni=100

  shmseg

  含义:每个用户进程可以使用的最多的共享内存段的数目。

  例子:Set shmsys:shminfo_shmseg=20:

  semmni

  含义:系统中semaphore identifierer的最大个数。

  设置方法:把这个变量的值设置为这个系统上的所有Oracle的实例的init.ora中的最大的那个processes的那个值加10。

  例子:Set semsys:seminfo_semmni=100

  semmns

  含义:系统中emaphores的最大个数。

  设置方法:这个值可以通过以下方式计算得到:各个Oracle实例的initSID.ora里边的processes的值的总和(除去最大的Processes
参数)+最大的那个Processes×2+10×Oracle实例的个数。

  例子:Set semsys:seminfo_semmns=200

  semmsl:

  含义:一个set中semaphore的最大个数。

  设置方法:设置成为10+所有Oracle实例的InitSID.ora中最大的Processes的值。

  例子:Set semsys:seminfo_semmsl=-200

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

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

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

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

session required pam_limits.so

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

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

su - oracle

vi .bash_profile     加入以下内容

#DISPLAY=localhost:0.0

#export DISPLAY

export ORACLE_SID=orcl

export ORACLE_BASE=/u01/oracle/product

export ORACLE_HOME=/u01/oracle/product/11.1

export ORA_CRS_HOME=/u01/oracle/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 ORA_NLS10=$ORACLE_HOME/nls/data

export PATH=$PATH:$ORACLE_HOME/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/lib:$JAVA_HOME/bin:$ORA_CRS_HOME/bin:

9. 用root用户将FTP至LINUX中的ORACLE安装文件移动到

mount -o username=administrator //192.168.196.55/iso /mnt/cdrom

mv ****.zip /u01/oracle/

unzip *.zip      命令进行解压.完成后,所以安装文件都会在u01/oracle/database下.

10.chown -R oracle:dba /u01/

   ls -l

11.使用oracle用户登陆,输入startx ,进入图形界面,然后再进入安装目录输入

./runInstaller开始安装.

在安装中会弹出一个要求执行u01/oraInventory/oraInstRoot.sh和/u01/oracle/root.sh的提示框,可在secureCRT中,以ROOT用户执行这两个文件后结束安装



12. 输入netca命令进行侦听配置.其中参数一律默认即可.可以用ps -ef 查看该服务是否已启用.

13.输入dbca命令,进行数据库的创建

14.启动数据库

sqlplus sys as sysdba

startup

15.启动监听器

lsnrctl start

16.启动OEMweb管理

emctl start dbconsole

oracle 11g OEM默认管理地址为 https://127.0.0.1:1158/em

17.安装后运行sqlplus如碰到

sqlplus: error while loading shared libraries: /u01/oracle/product/11.1/lib/libnnz11.so

则可能是selinux引起的,解除selinux限制采用以下方法:

使用root登录

[root@RHEL1 11.1]# getenforce

Enforcing

[root@RHEL1 11.1]# /usr/sbin/setenforce 0 

[root@RHEL1 11.1]# cd /etc/selinux

[root@RHEL1 selinux]# vi config

SELINUX=disabled      

 把SELINUX设置为disabled ,保存后退出。

18.如果在lsnrctl start的时候报TNS-12547: TNS:lost contact错误,注意检查本地的/etc/hosts文件,是不是将127.0.0.1对应了主机名,应该对应localhost

19.服务启动正常后,如果发现远程连接不上,注意lsnrctl status检查一下数据库实例是否正常注册到监听中,如果没有,请执行alter system register或重启数据库后再重启监听,查看是否正常,如果无法解决,尝试使用静态监听注册的方法