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
例子: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或重启数据库后再重启监听,查看是否正常,如果无法解决,尝试使用静态监听注册的方法