您的位置:首页 > 数据库 > Oracle

ORACLE 11g在linux下的安装

2012-05-16 13:16 357 查看
转载请注明来源:http://blog.csdn.net/vitallor

本安装说明仅适用于如下配置

操作系统:RedHatEnterprise Linux 5Centos 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名。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: