国内更专业
计算机技术平台

CentOS7安装Oracle11g详细教程

安装环境

CentOS(本教程使用CentOS-7-x86_64-DVD-1708版本)

   

Oracle Database(本教程使用Oracle Database 11g Release 2→11.2.0.1.0→Linux x86-64版本)

注:其中File1和File2均需要下载

 

 

Oracle安装步骤

1、修改OS系统标识

oracle默认不支持CentOS系统安装

[root@localhost ~]# vi /etc/redhat-release

修改为redhat-7

2、关闭防火墙

[root@localhost ~]# systemctl status firewalld.service #查看防火墙状态

[root@localhost ~]# systemctl stop firewalld.service  #关闭防火墙

[root@localhost ~]# systemctl disable firewalld.service #禁止使用防火墙

3、用yum remove *openjdk* 把系统自带的openjdk卸载,再安装sun jdk:rpm -ivh jdk-8u144-linux-x64.rpm。(下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

(因为openjdk环境安装oracle GUI会报class not found的错误)。

然后java -version检查一下安装是否成功。

4、root身份安装依赖包:

(1)

[root@localhost ~]# yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*

(2)pdksh安装包在CentOS 5.11版本之后就没有了,所以要手动安装。下载到/usr目录下。

[root@localhost ~]# cd /usr

[root@localhost usr]# wget http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

[root@localhost usr]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

5、创建运行oracle数据库的系统用户和用户组

[root@localhost ~]# groupadd oinstall

[root@localhost ~]# groupadd dba

[root@localhost ~]# groupadd oper

[root@localhost ~]# useradd -g oinstall -G dba,oper oracle

[root@localhost ~]# echo "123" | passwd --stdin oracle

[root@localhost ~]# id oracle    #查看新建的oracle用户uid=1001(oracle) gid=1001(oinstall) 组=1001(oinstall),1002(dba),1003(oper)

6、创建oracle数据库安装目录

[root@localhost ~]# mkdir -p /data/oracle       #oracle数据库安装目录

[root@localhost ~]# mkdir -p /data/oraInventory  #oracle数据库配置文件目录

[root@localhost ~]# mkdir -p /data/database     #oracle数据库软件包解压目录

[root@localhost ~]# chown -R oracle:oinstall /data/oracle  #设置目录所有者为oinstall用户组的oracle用户

[root@localhost ~]# chown -R oracle:oinstall /data/oraInventory

[root@localhost ~]# chown -R oracle:oinstall /data/database

7、关闭selinux(需重启生效)

[root@localhost ~]# vi /etc/selinux/config

修改SELINUX为disabled

SELINUX=disabled

8、修改内核参数

(1)修改参数

[root@localhost ~]# vi /etc/sysctl.conf

添加以下内容:

net.ipv4.icmp_echo_ignore_broadcasts = 1

net.ipv4.conf.all.rp_filter = 1

fs.file-max = 6815744

fs.aio-max-nr = 1048576

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 = 262144

net.core.rmem_max= 4194304

net.core.wmem_default= 262144

net.core.wmem_max= 1048576

(2)使参数生效

[root@localhost ~]# sysctl -p

9、对oracle用户设置限制,提高软件运行性能

[root@localhost ~]# vi /etc/security/limits.conf

添加以下内容(粗体内容):

@student – maxlogins 4

oracle soft nproc 2047  

oracle hard nproc 16384  

oracle soft nofile 1024  

oracle hard nofile 65536  

oracle soft stack 10240

End of file

10、配置用户的环境变量

(1)修改环境变量:

[root@localhost ~]# vi /home/oracle/.bash_profile

添加以下内容:

export ORACLE_BASE=/data/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=orcl

export ORACLE_TERM=xterm

export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export LANG=C

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

(2)使配置生效

[root@localhost ~]# source /home/oracle/.bash_profile

11、修改login文件

[root@localhost ~]# vi /etc/pam.d/login

添加:

session required pam_limits.so

12、修改ulimit

[root@localhost ~]# vi /etc/profile

添加以下内容:

if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536a

else

ulimit -u 16384 -n 65536

fi

fi

13、上述工作完成后,建议重启系统。

14、登录oracle用户

(1)通过图形界面登录oracle用户

(2)启动oralce安装

(3)到/data/database/目录下,执行./runInstaller,按照步骤进行安装。

(4)安装过程中需要环境检测,结果如图,选中ignore All忽略即可。

 

15、安装中出现问题

安装过程中连接库时,在进度84%时会出现2个错误:

第1个: 安装过程中,在link binaries阶段出现2个错误,第一个是关于ins_ctx.mk,log显示:/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14′

原因是由于本机的glibc版本高于2.14(实际为2.17)。解决方法:

[root@localhost ~]# yum install glibc-static

该软件包包含一个静态链接库:/usr/lib64/libc.a

修改/data/oracle/product/11.2.0/db_1/ctx/lib/ins_ctx.mk,将

ctxhx: $(CTXHXOBJ)
$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)

修改为:

ctxhx: $(CTXHXOBJ)
-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/libc.a

点击Retry即可。

 

第2个:

”Error in invoking target ‘agent nmhs’ of makefile’/data/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk.’

解决方法,在makefile中添加链接libnnz11库的参数:

修改/data/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk,将

$(MK_EMAGENT_NMECTL)

修改为:

$(MK_EMAGENT_NMECTL) -lnnz11

点击Retry即可。

16、安装完成后,切换到root用户

[root@localhost ~]# cd /oracle/product/11.2.0/db_1

[root@localhost ~]# ./root.sh

用以创建”/etc/oratab”,为dbca做准备。

配置oracle 监听和oracle EM

启动顺序:监听—->数据库—–>EM、isql*plus

关闭顺序:EM、isql*plus—->监听—->数据库

[oracle@localhost ~]$ netca

下一步,默认安装即可

创建数据库

按照步骤默认安装,在初始化参数这一步中注意修改字符集为AL32UTF8即可。

创建数据库需要较长时间,请耐心等待。

 

启动

1、#su – oracle 切换到 oracle 用户且切换到它的环境

2、$lsnrctl status 查看监听及数据库状态

3、$lsnrctl start 启动监听

4、$sqlplus / as sysdba 以 DBA 身份进入 sqlplus

5、SQL>startup 启动 db

注意:SQL>startup这一步会提示如下错误:

ORA-01078: failure in processing system parameters

LRM-00109: could not open parameter file ‘/data/oracle/product/11.2.0/db_1/dbs/initorcl.ora’

解决办法:

[oracle@localhost ~]# cd /data/oracle/product/11.2.0/db_1/dbs/
发现在/data/oracle/product/11.2.0/db_1/dbs/下找不到initorcl.ora文件,于是去/data/oracle/admin/mydb/pfile下,找到文件init.ora.9172017115258,然后将文件拷贝到/data/oracle/product/11.2.0/db_1/dbs/目录下,并重命名为initorcl.ora后,重启数据,问题解决!

停止

1、#su – oracle 切换到 oracle 用户且切换到它的环境

2、$lsnrctl stop 停止监听

3、$sqlplus / as sysdba 以 DBA 身份进入 sqlplus

4、SQL>SHUTDOWN IMMEDIATE 关闭 db

 

声明:东云网原创,转载请注明。

赞(0) 打赏
未经允许不得转载:东云网 » CentOS7安装Oracle11g详细教程

评论 抢沙发

评论前必须登录!

 

东云科技,与您偕行!

免责声明联系我们

觉得文章有用就打赏一下文章作者吧,么么哒~

支付宝扫一扫打赏

微信扫一扫打赏