centos7安装Oracle11gR2

CentOS7安装Orcale11gR2

环境

CentOS 7.6.1810

#uname -r
    3.10.0-957.el7.x86_64

# cat /etc/redhat-release
    CentOS Linux release 7.6.1810 (Core) 

安装依赖包

1、CentOS依赖包(不低于该版本)

binutils-2.23.52.0.1-12.el7.x86_64

compat-libcap1-1.10-3.el7.x86_64

compat-libstdc++-33-3.2.3-71.el7.i686

compat-libstdc++-33-3.2.3-71.el7.x86_64

gcc-4.8.2-3.el7.x86_64

gcc-c++-4.8.2-3.el7.x86_64

glibc-2.17-36.el7.i686

glibc-2.17-36.el7.x86_64

glibc-devel-2.17-36.el7.i686

glibc-devel-2.17-36.el7.x86_64

ksh

libaio-0.3.109-9.el7.i686

libaio-0.3.109-9.el7.x86_64

libaio-devel-0.3.109-9.el7.i686

libaio-devel-0.3.109-9.el7.x86_64

libgcc-4.8.2-3.el7.i686

libgcc-4.8.2-3.el7.x86_64

libstdc++-4.8.2-3.el7.i686

libstdc++-4.8.2-3.el7.x86_64

libstdc++-devel-4.8.2-3.el7.i686

libstdc++-devel-4.8.2-3.el7.x86_64

libXi-1.7.2-1.el7.i686

libXi-1.7.2-1.el7.x86_64

libXtst-1.2.2-1.el7.i686

libXtst-1.2.2-1.el7.x86_64

make-3.82-19.el7.x86_64

sysstat-10.1.5-1.el7.x86_64

unixODBC-2.3.1-6.el7.x86_64 or later

unixODBC-2.3.1-6.el7.i686 or later

unixODBC-devel-2.3.1-6.el7.x86_64 or later

unixODBC-devel-2.3.1-6.el7.i686 or later

用yum进行安装

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33 gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 elfutils-libelf-devel

检测是否31个包都有安装

rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst  make sysstat  unixODBC unixODBC-devel elfutils-libelf-devel

2、添加主机名与IP对应记录

# vim /etc/hosts

192.168.50.74 jinyue.centos

3、创建用户组和用户
组(oinstall,dba,oracle,oper)

#/usr/sbin/groupadd oinstall
#/usr/sbin/groupadd dba

#/usr/sbin/useradd -g oinstall -G dba oracle

设置oracle用户密码
#passwd oracle

验证创建是否正确
# id oracle
uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba)

4、配置内核参数

#vim /etc/sysctl.conf

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 953985024   #最低:536870912,最大值:比物理内存小1个字节的值,建议超过物理内存的一半
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

修改后使之生效
#/sbin/sysctl -p

5、修改用户限制

#vim  /etc/security/limits.conf

#在末尾添加
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240

6、创建目录

mkdir -p /data/app/
chown -R oracle:oinstall /data/app/
chmod -R 775 /data/app/

7、配置oracle用户得环境变量

在oracle用户下

[oracle@docker ~]$ vim ~/.bash_profile 

export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orclcentos

使之生效
source ~/.bash_profile

8、将安装包移动到/usr/local/src路径下

9、解压oracle软件

# unzip linux.x64_11gR2_database_1of2.zip
# unzip linux.x64_11gR2_database_2of2.zip

10、安装oracle

关闭selinux ,编辑 /etc/selinux/config文件,设置SELINUX= enforcing 为SELINUX=disabled

界面安装数据库
    切换到root用户
    #xhost +
    正常返回:access control disabled,clients can connect from any host

    切换到Oracle用户,192.168.50.76为安装XManager的客户端IP
    $export DISPLAY=192.168.50.76:0.0

静默安装数据库

    su oracle
    cd /usr/local/src/oracle11gR2/database
    ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /usr/local/src/oracle11gR2/oracle11gR2_install_db.rsp

出现问题:Exception in thread "main" java.lang.NoClassDefFoundError
解决方法:unset DISPLAY

11、提示ins_ctx.mk编译错误

再oracle用户下修改
    /u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk

ctxhx: $(CTXHXOBJ)
    $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)    (11行)
 修改为: 
ctxhx: $(CTXHXOBJ)
    -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/libc.a    

12、提示ins_emagent.mk编译错误
修改

/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

(MK_EMAGENT_NMECTL)  (190行)
修改为:
(MK_EMAGENT_NMECTL) -lnnz11            

13.Linux下sqlplus不能使用光标箭头

下载rlwrap包: https://pkgs.org/download/rlwrap
通过Xftp上传至    /usr/local/src
下载最新的epel-release安装包:http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/e/
通过Xftp上传至    /usr/local/src


安装epel:
# rpm -Uvh epel-release-7-11.noarch.rpm


安装rlwrap
# yum install rlwrap

14、配置监听服务

$ ./netca -silent -responseFile /usr/local/src/oracle11gR2/database/response/netca.rsp

启动监听服务
/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start LISTENER

15、创建数据库

使用DBCA(Database Conifguration Assistan)创建数据库

/u01/app/oracle/product/11.2.0/dbhome_1/bin/
$ ./dbca

静默创建数据库

vi /etc/oratab
    orcl:/app/oracle/product/11.2.0/dbhome_1:Y
cd /app/oracle/admin/orcl/scripts
./orcl.sh

./dbca -silent 
./dbca -silent -createDatabase -responseFile /u01/app/oracle/oracle19c_dbca.rsp

16、启动数据库

启动实例

默认数据库建立后就启动了,如果服务器重新启动,那就要手工去启动它了,命令如下:(SID可在 $ORACLE_BASE/admin目录查看)

$export ORACLE_SID=orcl //设置要启动的数据库SID,区分大小写

$echo $ORACLE_SID

$sqlplus /nolog

sql>connect /as sysdba

sql>startup //shutdown停止数据库

17、启动监听

首先退出上面启动数据库的sql执行,用quit或者exit退到普通命令行上

$lsnrctl start //启用监听,如果监听名称不是默认这个,则启动您对应的监听名称

$lsnrctl stop //关闭监听

$lsnrctl status //监听状态

18、设置开机启动oracle实例

# vim /etc/oratab
    修改为
    orclcentos:/data/app/oracle/product/11.2.0/dbhome_1:Y

# chmod +x /etc/rc.d/rc.local

# vim /etc/rc.d/rc.local
    添加
    su oracle -lc "/data/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start"
    su oracle -lc "/data/app/oracle/product/11.2.0/dbhome_1/bin/dbstart"

完成建库后进行实例检查

ps -ef | grep ora_ | grep -v grep

查看监听状态

lsnrctl status

登录查看实例状态

sqlplus / as sysdba
select * from v$database;

常见问题

问题1、ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务

修改\data\oracle\product\11.2.0\db_1\network\admin\listener.ora中的localhost改为192.168.50.74

问题2、安装过程中弹出对话框显示不全

解决办法:对话框可能无法正常弹出,但是用鼠标可以拖开。


   转载规则


《centos7安装Oracle11gR2》 Midas Li 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
centos7开机自动启动jar包 centos7开机自动启动jar包
CentOS7开机自动启动jar包# vim /usr/local/eureka/eureka-service-start.sh #!/bin/sh #chkconfig:2345 10 90 #descriptio
2019-07-31
下一篇 
centos7常用技巧 centos7常用技巧
参考资料 志云的博客 CentOS7 常用技巧调整分区大小原文链接 扩展存储空间原文链接 注意:重建home的分区,大小根据vgdisplay的Free PE / Size来确定 修改swap虚拟内存大小1、创建swap文件所在文
2019-07-31