1、实验环境说明
本实验中需在VMware 中共配置3台服务器,节点1创建并配置后,可克隆出节点2(修改相关参数),另外一台模拟存储。
操作系统:redhat6.6(建议最小化安装,会缺几个包,可配置本地yum源后yum安装)
oracle12c(linuxx64_12201_database.zip)
12cgrid(linuxx64_12201_grid_home.zip)
2、oracle 12C R2 软硬件要求
2.1硬件最低配置要求
序号 |
组件 |
内存需求 |
1 |
Oracle Grid Infrastructure installations |
4GB以上 |
2 |
Oracle Database installations |
最小1GB,建议2GB以上 |
2.2oracle 12C R2认证的OS软件版本
序号 |
组件 |
1 |
Oracle Linux 7 with the Unbreakable Enterprise kernel: |
2 |
Oracle Linux 7 with the Red Hat Compatible kernel: |
3 |
Oracle Linux 6.4 with the Unbreakable Enterprise kernel 2: |
4 |
Oracle Linux 6 with the Red Hat Compatible kernel: |
5 |
Red Hat Enterprise Linux 7: 3.10.0-123.el7.x86_64 or later |
6 |
Red Hat Enterprise Linux 6: 2.6.32-358.el6.x86_64 or later |
7 |
SUSE Linux Enterprise Server 12: 3.12.28-4-default or later |
8 |
SUSE Linux Enterprise Server 11 SP2: 3.0.13-0.27 or later |
3、整体规划
节点一:jydb1
192.168.12.95 public
192.168.12.97 vip
10.0.0.5 prive1###与节点2prive1、存储sp1组成vlan10,从而实现多路径
10.0.0.11 prive2###与节点2prive2、存储sp2组成vlan20
节点二:jydb2
192.168.12.96 public
192.168.12.98 vip
10.0.0.6 prive1
10.0.0.22 prive2
scan ip
192.168.12.90
storage(存储)
192.168.12.92
10.0.0.111 sp1
10.0.0.222 sp2
3.2操作系统本地磁盘分区规划
序号 |
分区名称 |
大小 |
用途说明 |
1 |
/boot |
200MB |
引导分区 |
2 |
/ |
剩余所有空间 (总分区建议40G以上) |
根分区 |
3 |
swap |
8192MB |
最少4GB以上 |
4、操作系统配置部分
4.1.修改主机名
参考(https://blog.csdn.net/weixin_40283570/article/details/80928858)
4.2 配置hosts文件
$ vi /etc/hosts ##根据规划增加如下配置 #eth0 public 192.168.12.95 jydb1 192.168.12.96 jydb2 #eth0 vip 192.168.12.97 jydb1-vip 192.168.12.98 jydb2-vip #eth1 private 10.0.0.5 jydb1-priv 10.0.0.6 jydb2-priv 10.0.0.11 jydb1-priv2 10.0.0.22 jydb2-priv2 #scan ip 192.168.12.90 jydb-cluster-scan
4.3 检查RPM依赖包
[root@jydb1 ~]# rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libaio libaio-devel libXext libXtst libX11 libXau libxcb libXi make sysstat nfs-utils binutils-2.20.51.0.2-5.46.el6.x86_64 compat-libcap1-1.10-1.x86_64 compat-libstdc++-33-3.2.3-69.el6.x86_64 gcc-4.4.7-18.el6.x86_64 gcc-c++-4.4.7-18.el6.x86_64 glibc-2.12-1.209.el6.x86_64 glibc-devel-2.12-1.209.el6.x86_64 ksh-20120801-33.el6.x86_64 libgcc-4.4.7-18.el6.x86_64 libstdc++-4.4.7-18.el6.x86_64 libaio-0.3.107-10.el6.x86_64 libaio-devel-0.3.107-10.el6.x86_64 libXext-1.3.3-1.el6.x86_64 libXtst-1.2.3-1.el6.x86_64 libX11-1.6.4-3.el6.x86_64 libXau-1.0.6-4.el6.x86_64 libxcb-1.12-4.el6.x86_64 libXi-1.7.8-1.el6.x86_64 make-3.81-23.el6.x86_64 sysstat-9.0.4-33.el6.x86_64 nfs-utils-1.2.3-75.el6.x86_64
如出现未安装则yum安装,亲测本地yum能满足所有包的安装。关于如何配置本地yum源,可查看《配置本地yum源》。
yum 安装
yum install binutils compat-libcap1 compat-libstdc++-33 \ e2fsprogs e2fsprogs-libs glibc glibc-devel ksh libaio-devel libaio libgcc libstdc++ libstdc++-devel \ libxcb libX11 libXau libXi libXtst make \ net-tools nfs-utils smartmontools sysstat
4.4 创建用户组
groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54324 backupdba groupadd -g 54325 dgdba groupadd -g 54326 kmdba groupadd -g 54327 asmdba groupadd -g 54328 asmoper groupadd -g 54329 asmadmin groupadd -g 54330 racdba useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle useradd -u 54322 -g oinstall -G asmadmin,asmdba,asmoper,dba grid设置Oracle 和grid 用户密码
passwd oracle passwd grid
4.5 创建文件目录及权限配置
mkdir -p /u01/app/12.2.0/grid mkdir -p /u01/app/grid mkdir -p /u01/app/oracle chown -R grid:oinstall /u01 chown oracle:oinstall /u01/app/oracle chmod -R 775 /u01/
4.6 配置环境变量
export ORACLE_SID=+ASM1; #export ORACLE_SID=+ASM2;###节点2用这个 export ORACLE_HOME=/u01/app/12.2.0/grid; export PATH=$ORACLE_HOME/bin:$PATH; export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
oracle用户
[root@jydb1 ~]# cat /home/oracle/.bash_profile
export ORACLE_SID=racdb1; #export ORACLE_SID=racdb2; ###节点2 用这个 export ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1; export ORACLE_HOSTNAME=jydb1; export PATH=$ORACLE_HOME/bin:$PATH; export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
4.7安装cvuqdisk(在grid介质cv/rpm目录下,也可以网上下载)
rpm -qi cvuqdisk CVUQDISK_GRP=oinstall; export CVUQDISK_GRP rpm -iv cvuqdisk-1.0.10-1.rpm
另外由于本系统是最小化安装,安装是会报错如下:
Preparing packages for installation... ls: 无法访问/usr/sbin/smartctl: 没有那个文件或目录 /usr/sbin/smartctl not
解决方案:
yum install smartmontools
再次安装即可成功。
5、修改操作系统配置
5.1关闭ntpd(最小化安装未安装ntpd服务,可不操作)
mv /etc/ntp.conf /etc/ntp.conf_bak
5.2 关闭防火墙
service iptables stop chkconfig iptables off
5.3 禁用selinux
修改/etc/selinux/config编辑文本中的SELINUX=enforcing为SELINUX=disabled
立即生效,setenforce 0
5.4 配置/etc/security/limits.conf,用户shell的限制
#在/etc/security/limits.conf 增加如下内容: grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 grid soft stack 10240 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240
5.5 配置/etc/sysctl.conf,修改内核参数
# vi /etc/sysctl.conf 增加如下内容: fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 6597069766656 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 #net.ipv4.conf.eth3.rp_filter = 2 #net.ipv4.conf.eth2.rp_filter = 2 #net.ipv4.conf.eth0.rp_filter = 1 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
修改生效:sysctl -p针对rp_filter部分,如果没有多张私有网卡,则不需要配置,测试中注释掉也未影响。
5.7 配置/etc/pam.d/login,加载 pam_limits.so插入式认证模块
vi /etc/pam.d/login 添加如下内容:
session required pam_limits.so
5.8 配置NOZEROCONF
vi /etc/sysconfig/network增加以下内容
NOZEROCONF=yes
5.9 修改nsswitch.conf(未验证)
nsswitch.conf保存的是域名检索顺序。在一些系统配置中,NIS(Network Information System)可能会引起SCAN域名解析异常。为了避免这种问题的发生,对nsswitch.conf做如下调整
#vi /etc/nsswitch.conf 修改行 hosts: files dns 为 hosts: files dns nis为节省时间,完成以上所有步骤后,可直接克隆 节点2 ,克隆完成后需修改环境变量、主机名及网卡信息。 (查看如何修改网卡信息)
5.10配置各节点ssh互信
①先生成节点一grid的公钥 [grid@jydb1 ~]$ ssh-keygen -t rsa -P '' Generating public/private rsa key pair. Enter file in which to save the key (/home/grid/.ssh/id_rsa): Your identification has been saved in /home/grid/.ssh/id_rsa. Your public key has been saved in /home/grid/.ssh/id_rsa.pub. The key fingerprint is: b6:07:65:3f:a2:e8:75:14:33:26:c0:de:47:73:5b:95 [email protected] The key's randomart image is: +--[ RSA 2048]----+ | .. .o| | .. o . .E | | . ...Bo o | | . .=.=. | | S.o o | | o = . . | | . + o | | . . o | | . | +-----------------+ 把它通过命令传到节点二, [grid@jydb1 ~]$ ssh-copy-id -i .ssh/id_rsa.pub [email protected] [email protected]'s password: Now try logging into the machine, with "ssh '[email protected]'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting. ②在第二个节点上也生成公钥,并追加到authorized_keys [grid@jydb2 .ssh]$ ssh-keygen -t rsa -P '' ...... [grid@jydb2 .ssh]$ cat id_rsa.pub >> authorized_keys [grid@jydb2 .ssh]$ scp authorized_keys [email protected]:.ssh/ The authenticity of host '10.0.0.1 (10.0.0.1)' can't be established. RSA key fingerprint is d1:21:03:35:9d:f2:a2:81:e7:e1:7b:d0:79:f4:d3:be. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '10.0.0.1' (RSA) to the list of known hosts. [email protected]'s password: authorized_keys 100% 792 0.8KB/s 00:00 ③验证 [grid@jydb1 .ssh]$ ssh jydb1 date 2018年 03月 30日 星期五 08:01:20 CST [grid@jydb1 .ssh]$ ssh jydb2 date 2018年 03月 30日 星期五 08:01:20 CST [grid@jydb1 .ssh]$ ssh jydb1-priv date 2018年 03月 30日 星期五 08:01:20 CST [grid@jydb2 .ssh]$ ssh jydb2-priv date 2018年 03月 30日 星期五 08:01:20 CST由于内容太多,分了几部分记录,第二部分地址 https://blog.csdn.net/weixin_40283570/article/details/80926694