redhat7安装oracle12c记要
官方说明文档参考http://docs.oracle.com/database/121/LTDQI/toc.htm#CEGEGDBA
环境:redhat7 64bit + oracle12c
(如果已有oracle运行,关闭监听和数据,卸载数据库,删除自启动文件(有的话)后再安装)
以下是本地安装(非远程安装,远程安装得话,要配置x11和xhost,感觉很麻烦),且系统安装图形桌面。
安装环境准备:
1.关闭一些服务
1 2 3 4 5 6 7 8 9 | # chkconfig iptables off # chkconfig ip6tables off # chkconfig cups off # chkconfig firstboot off # chkconfig wpa_supplicant off # chkconfig postfix off # vi /etc/selinux/config SELINUX=enforcing -> SELINUX=disabled |
如果需要远程安安装,不需要就跳过下面这步
1 2 3 4 5 6 7 | # vi /etc/ssh/sshd_config GSSAPIAuthentication no UseDNS no AllowTcpForwarding yes //X11远程GUI,必须要安装xorg-x11-xauth X11Forwarding yes #service sshd restart |
2.检查依赖环境
官方要求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # rpm -q binutils compat-libcap1 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat zlib zlib-devel binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.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 (有依赖问题,可以这样安rpm -ivh glibc-2.17-55.el7.i686.rpm nss-softokn-freebl-3.15.4-2.el7.i686.rpm) 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 zlib-1.2.7-13.el7.x86_64.rpm zlib-devel-1.2.7-13.el7.x86_64.rpm |
3.添加oracle用户
1 2 3 4 5 6 7 | # groupadd oinstall # groupadd dba # useradd -g oinstall -G dba oracle # passwd oracle # id oracle uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba) |
4.建安装目录
1 2 3 4 | # mkdir -p /u01/app/oracle/product/12.1.0/db_1 # mkdir -p /u01/app/oraInventory # chown -R oracle:oinstall /u01 # chmod -R 775 /u01 |
5.编辑Oracle用户环境
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # su - oracle $ vi .bash_profile #Oracle Settings export TMP=/tmp export TMPDIR=$TMP export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 export ORACLE_SID=ZHBG(修改为你的SID,在下一步安装时使用) export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib $ source .bash_profile |
6.配置内核参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # vi /etc/sysctl.conf fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 //# /sbin/sysctl -a | grep shm 总内存40%(K) kernel.shmmax = 536870912 //官方文档建议是内存的1/2(Byte) kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 //# /sbin/sysctl -a | grep sem 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 = 1048586 # /sbin/sysctl -p |
确定安装oracle所使用的用户组
# id oracle 可以看到oracle组dba id 为1002
more /proc/sys/vm/hugetlb_shm_group
如果结果不是1002
修改内核参数 echo 1002 >/proc/sys/vm/hugetlb_shm_group
修改/etc/sysctl.conf文件
vm.hugetlb_shm_group = 1002
# /sbin/sysctl -p
7.修改系统限制
1 2 3 4 5 6 7 8 9 10 11 | # vi /etc/security/limits.conf 加入以下语句(oracle是用户名): oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 10240 # vi /etc/pam.d/login session required /lib64/security/pam_limits.so session required pam_limits.so |
8.配置Hosts文件
1 2 | # vi /etc/hosts 192.168.1.100 localhost localhost.localdomain |
如果没有oracle 的监听器无法启动
使用hostname命令查看主机名,ifconfig命令查看IP地址
9.解压安装文件
1 2 3 4 5 6 7 8 9 10 | $ su - root # cd /home/jslfl/install # cp linuxamd64_12c_database_1of2.zip /opt # cp linuxamd64_12c_database_2of2.zip /opt # cd /opt # ls linuxamd64_12c_database_1of2.zip linuxamd64_12c_database_2of2.zip # unzip linuxamd64_12c_database_1of2.zip # unzip linuxamd64_12c_database_2of2.zip # chown -R oracle:oinstall database |
10.安装过程
重启用oracle用户登陆
中文系统防止中文乱码
1 2 3 | $ export LANG=”en_US.UTF-8” $ cd /opt/database $ ./runInstaller |
因为12c的第一版本还不支持linux7,安装过程中会出错,建议最好不用这第一个版本。
出错信息’/u01/app/oracle/product/12.1.0/db_1/precomp/lib/lns_precomp.mk’
网上有解决办法,测试可行:
# cd /u01/app/oracle/product/12.1.0/db_1/lib/stubs
# mkdir /bak
# cp * /bak
# cd /bak
# rm -rf /u01/app/oracle/product/12.1.0/db_1/lib/stubs/*
# cp /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk.orig
# vi /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk
(vi中 “:set number” 显示行号)
176行
修改前:
LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS)
修改后:
LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS) -lons
279-280行
修改前:
LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS)
LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS)
修改后:
LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS) -Wl,–no-as-needed
LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS) -Wl,–no-as-needed
3041-3042行
修改前:
TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
$(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS)
修改后:
TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \
$(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS) -lnnz12
修改后,点击Retry
Comments are currently closed.