转载请注明来源:http://blog.youkuaiyun.com/vitallor
本安装说明仅适用于如下配置
操作系统:RedHatEnterprise Linux 5 、Centos Linux 5
ORACLE版本:ORACLE 10g 、ORACLE 11g
其他可供参考
1、安装步骤
1、创建oracle用户和dba组
用root用户登录系统,执行如下操作;
#groupadd dba
#useradd -g dba oracle
2、设置系统变量
(1)编辑/etc/sysctl.conf文件,添加如下内容(数值仅供参考):
kernel.shmall= 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
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 = 1048576
fs.aio-max-nr= 1048576
编辑完成后,需要重新启动系统,或者执行sysctl –p使设置生效
(2)编辑/etc/pam.d/login文件,添加如下内容:
sessionrequired pam_limits.so
(3)编辑/etc/security/limits.conf文件,添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
3、创建oracle安装路径
使用root用户登录,执行如下命令:
# mkdir/opt/oracle
# mkdir /opt/oracle/111
# chown -R oracle:dba /opt/oracle
4、设置oracle环境变量
用oracle用户登录,编辑/home/oracle/.bash_profile文件,添加如下内容
ORACLE_BASE=/opt/oracle
ORACLE_HOME=$ORACLE_BASE/111
ORACLE_SID=ORCL
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATHPATH
编辑保存之后,需要执行如下命令,使新的环境变量生效
cd/home/oracle
. .bash_profile
如果只安装oracle软件,不安装数据库,ORACLE_SID=ORCL也可不设置,待以后添加数据库时在设置;
以上内容仅供参考,也可根据实际安装路径进行调整
5、oracle软件的安装
下面以oracle 11g 32bit的安装为例,其他版本基本相同;
1、 首先进行解压,执行命令:unzip linux_11gR1_database.zip
2、 解压完成后,会在当前路径下生成一个名为database的文件夹,进入这个文件夹,执行安装命令:
cd database
./runInstaller
3、接下来将是图形化界面,基本点击“下一步”就可以了;不过oracle在linux的安装中,通常不会那么顺利,在下面章节进行了一些总结,如遇问题,可供参考。
2、常出现的问题及解决方案
1、 DISPLAY not set. Pleaseset the DISPLAY and try again.
这也许是你使用的连接linux的终端不能很好的支持linux的图形界面,这里推荐使用Xmanager来作为连接linux的终端。
网上也提供了如下的解决方案,但通常并不一定是其所诉问题导致
Solution: Execute "exportDISPLAY=:0.0" when you perform installtion on local machine or"export DISPLAY=:0.0 when you perform installation on remote machineconnected over SSH". Don't forget to execute "xhost +" commandon client machine.
2、版本相关问题
如果当前版本为RHEL 5, Centos 5
修改database/install/oraparam.ini,在“Certified Versions”项下,追加redhat-5
3、 Exceptionjava.lang.UnsatisfiedLinkError
对于RH 5, OEL 5, Centos 5系统,需要安装libXp-1.0.0-8.1.el5.i386.rpm
4、 Checking NetworkConfiguration requirements ...
编辑etc/hosts ,修改如下
127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6
192.168.30.144 test144-server
执行命令
/etc/init.d/network restart
5、安装过程中,缺少包
检查语句:rpm -q binutils compat-db compat-libstdc++-33 glibc glibc-develglibc-headers gcc gcc-c++ libstdc++ cpp make libaio ksh elfutils-libelf sysstatlibaio libaio-devel setarch --qf '%{name}.%{arch}\n'|sort
执行:yum install 缺少包名1 缺少报名2
也可以用yum search 查找缺少的包
6、error while loading shared libraries: libaio.so.1: cannotopen shared object file: No such file or directory
网上提供的解决方案:
Solution: Install libaio and libaio-develpackages. If packages already installed and error still occurs try execute"ldconfig" as root.
7、出现乱码
修改/etc/sysconfig/i18n文件
#LANG="en_US.UTF-8"
#SUPPORTED="en_US.UTF-8:en_US:en"
#SYSFONT="latarcyrheb-sun16"
改为
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
或者干脆使用英文,unset LANG
8、sqlplus / as sysdba无法登录,提示sqlplus: error while loading shared libraries:/oracle/ora11gR2/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1: cannot restoresegment prot after reloc: Permission denied
编辑/etc/sysconfig/selinux,找到:
# Thisfile controls the state of SELinux on the system.
#SELINUX= can take one of these three values:
#enforcing - SELinux security policy is enforced.
#permissive - SELinux prints warnings instead of enforcing.
#disabled - SELinux is fully disabled.
SELINUX=enforcing
如果SELINUX已经是 SELINUX=disabled,那么就不用改了,否则就把SELINUX=enforcing 注释掉,新加一行:
SELINUX=disabled
保存,退出
如果碰到如下类似提示,一般也是selinux引起的,解决方式同上:
cannot restore segment prot after reloc: Permission denied
9、用PLSQLDeveloper等工具无法连接数据库
可能是监听没开导致,可先用lsnrctl status命令检查监听是否开启,如未开启,可用lsnrctl start命令将其启动。
10、无法打开EM
可能是em服务没有开启,可先用emctlstatus dbconsole命令检查em是否开启,如未开启,使用emctl start dbconsole命令启动。
检测和启动em服务时,需先保证当前的ORACLE_SID是否正确,可用echo $ORACLE_SID来检查,修改ORACLE_SID环境变量,可执行export ORACLE_SID=SID名。