centos7.7 oracle 12c RAC 部署安装记录

 

centos7.7 oracle 12c RAC 安装教程

 

0.安装openfiler(密码:123456

eth0:192.168.2.100web控制台登录IP,账号:openfiler,密码:password

eth1:192.168.2.101

子网:255.255.255.0

 

#修改主机名为openfiler

vi /etc/sysconfig/network  

 

#设置完openfiler 控制台中的VolumeSystemsservices

vi /etc/initiators.deny 注释iqn.2006-01.com.openfiler:tsn.c9d01aaf371e ALL

 

1.安装centos7.7

#进安装界面时按TAB键 输入 net.ifnames=0 biosdevname=0 然后回车

#racdb1

eth0:192.168.2.10root账号/密码:123456

eth1:10.1.1.10

子网:255.255.255.0

 

#racdb2

eth0:192.168.2.20root账号/密码:123456

eth1:10.1.1.11

子网:255.255.255.0

 

#修改主机名

hostnamectl set-hostname rac

 

#重启网卡

systemctl restart network

 

#执行rac_install.sh 脚本(执行前记得挂载系统光盘)

chmod a+x rac_install.sh

./rac_install.sh

 

 

#执行compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

 

 

1.2.配置DNS

 

执行

systemctl start named

 

执行

systemctl status named

 

使用nslookup racdb2,racdb2-priv,racdb-scan 命令去互相解析DNS验证

 

执行

systemctl enable named

 

2.共享存储配置

 

2.1openfiler主机上查看iscsi服务是否开启

service iscsi-target status

 

2.2rac1,rac2两个节点安装iscsi initiator

rpm -qa|grep iscsi

yum -y install iscsi-initiator-utils

 

2.3获取IQN

iscsiadm -m discovery -t  sendtargets -p  192.168.2.100

92.168.2.100:3260,1 iqn.2006-01.com.openfiler:tsn.11506e928845

 

2.4挂载ISCSI存储

#查看目前挂载的情况

fdisk -l|grep dev

 

2.5启动iscsi

systemctl start iscsi

 

2.6启动后查看验证

fdisk -l|grep dev

 

2.7查看指定服务的状态

systemctl status iscsi

 

3.多路径软件安装

rpm -qa |grep device-mapper-multipath

yum -y install device-mapper device-mapper-multipath

 

3.1将多路径软件添加内核块中

modprobe dm-multipath

modprobe dm-round-robin

 

3.2检查是否正常安装成功

lsmod |grep dm_multipath

multipath -ll

 

3.3将多路径软件设置开机自启动

systemctl enable multipathd

 

3.4启动多路径软件

systemctl start multipathd

 

3.5查看启动状态

systemctl status multipathd

 

3.6多路径配置

#停止多路径服务

systemctl stop multipathd

 

#清理缓存

multipath -F

 

#获取所有存储LUNWWID

for i in `cat /proc/partitions|awk {'print $4'} |grep sd`; do val=`/sbin/blockdev --getsize64 /dev/$i` ; val2=`expr $val / 1073741824`;echo "/dev/$i:$val2 `/usr/lib/udev/scsi_id -gud /dev/$i`";done

 

1ATA_VBOX_HARDDISK_VB145bd4a6-b20a5bca  #racdb1

1ATA_VBOX_HARDDISK_VB4a20e6f4-f700514a  #racdb2

/dev/sdc:2 14f504e46494c455264336b594e4f2d346638792d356e654c

/dev/sdb:2 14f504e46494c455264336b594e4f2d346638792d356e654c

/dev/sdd:2 14f504e46494c45523137353577632d787237722d6c4a6778

/dev/sde:2 14f504e46494c45523137353577632d787237722d6c4a6778

/dev/sdg:2 14f504e46494c45527844664246502d6e6268322d46777561

/dev/sdf:2 14f504e46494c45527844664246502d6e6268322d46777561

/dev/sdh:40 14f504e46494c45526d336b3062322d69784e622d325a544a

/dev/sdi:40 14f504e46494c45526d336b3062322d69784e622d325a544a

/dev/sdj:40 14f504e46494c45524567336249422d4f3551302d65637931

/dev/sdk:40 14f504e46494c45524567336249422d4f3551302d65637931

/dev/sdl:9 14f504e46494c45524338454452642d6b6b36532d32383242

/dev/sdm:9 14f504e46494c45524338454452642d6b6b36532d32383242

 

 

 

 

#修改vi  /etc/multipath.conf 文件

vi  /etc/multipath.conf

 

defaults {

        user_friendly_names yes

        path_group_policy  multibus

        find_multipaths yes

}

blacklist {

         wwid    1ATA_VBOX_HARDDISK_VB4a20e6f4-f700514a #节点1和节点2值不一样

 

 

}

multipaths {

        multipath {

                wwid    14f504e46494c455264336b594e4f2d346638792d356e654c

                alias   asmocrvote1

             

        }

multipath {

                wwid    14f504e46494c45523137353577632d787237722d6c4a6778

                alias   asmocrvote2

             

        }

multipath {

                wwid    14f504e46494c45527844664246502d6e6268322d46777561      

                alias   asmocrvote3

             

        }

 

        

multipath {

                wwid    14f504e46494c45526d336b3062322d69784e622d325a544a       

                alias   asmmgmtdisk1

             

        }

 

multipath {

                wwid    14f504e46494c45524567336249422d4f3551302d65637931       

                alias   asmmgmtdisk2

             

        }

 

multipath {

                wwid    14f504e46494c45524338454452642d6b6b36532d32383242       

                alias   asmdatadisk

             

        }

 

}

 

#启动多路径服务

systemctl start multipathd

systemctl status multipathd

 

3.7查看多路径状态

ll /dev/mapper/

 

3.8配置多路径设备的权限(udev方式实现)

# 将文件复制到etc/dev/rules.d/

cp /usr/share/doc/device-mapper-1.02.158/12-dm-permissions.rules /etc/udev/rules.d/

 

#使用cat 命令写入参数

cat  <<EOF >> /etc/udev/rules.d/12-dm-permissions.rules

ENV{DM_NAME}=="asmocrvote1",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

ENV{DM_NAME}=="asmocrvote2",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

ENV{DM_NAME}=="asmocrvote3",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

ENV{DM_NAME}=="asmmgmtdisk1",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

ENV{DM_NAME}=="asmmgmtdisk2",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

ENV{DM_NAME}=="asmdatadisk",OWNER:="grid",GROUP:="asmadmin",MODE:="660"

EOF

 

 

#看下是否写入成功

vi /etc/udev/rules.d/12-dm-permissions.rules

 

3.9首先查看目前权限挂在哪个用户下

ll /dev/dm*  

 

3.10执行命令使其生效

/sbin/udevadm trigger --type=devices --action=change

 

3.11查看是否改成gird用户下的asmadmin

ll /dev/dm*  

 

如果以上都没有问题那么grid环境基本安装完成.

 

 

4.通过SSH上传gird安装包并解压

#如未安装unzip 则安装一下

yum install -y unzip zip

#grid软件安装包拷贝到racdb1 /soft

切换grid用户执行unzip linuxx64_12201_grid_home.zip -d $ORACLE_HOME

 

#解压完成后切换root用户执行 cd /u01/app/11.2.0/grid/cv/rpm/  下的cvuqdisk-1.0.10-1.rpm

cd /u01/app/11.2.0/grid/cv/rpm/

ll

rpm -ivh  cvuqdisk-1.0.10-1.rpm

 

#传到racdb2节点上同样执行一下

scp cvuqdisk-1.0.10-1.rpm  racdb2:/root

 

 

5.配置SSH信任关系(只要在节点1执行)

#/u01/app/11.2.0/grid/路径下找到sshUserSetup.sh文件

find /u01/app/11.2.0/grid/ -name sshUserSetup.sh

/u01/app/11.2.0/grid/deinstall/sshUserSetup.sh

 

/u01/app/11.2.0/grid/deinstall/sshUserSetup.sh  -user oracle -hosts 'racdb1 racdb2 racdb1-priv racdb2-priv' -advanced   

#密码全是oracle

/u01/app/11.2.0/grid/deinstall/sshUserSetup.sh  -user grid -hosts 'racdb1 racdb2 racdb1-priv racdb2-priv' -advanced

#密码全是grid

 

#验证 在rac1rac2分别验证ssh还要不要输入密码,如果不用则为成功

su - grid

ssh rac2 date

ssh rac2-priv date

su - oracle

ssh rac2 date

ssh rac2-priv date

 

 

 

6.挂载系统安装镜像然后安装 nfs-utils*

#查看系统磁盘使用情况

df -h

 

Filesystem               Size  Used Avail Use% Mounted on

devtmpfs                 1.3G     0  1.3G   0% /dev

tmpfs                    1.3G     0  1.3G   0% /dev/shm

tmpfs                    1.3G  8.6M  1.3G   1% /run

tmpfs                    1.3G     0  1.3G   0% /sys/fs/cgroup

/dev/mapper/centos-root   31G  4.5G   27G  15% /

/dev/sda1               1014M  136M  879M  14% /boot

tmpfs                    251M     0  251M   0% /run/user/0

/dev/sr0                 4.4G  4.4G     0 100% /mnt  #看到此处表示光盘已挂载在/mnt目录下

 

 

############################################################################################

#如果没有挂载上的话在root目录下输入命令:

# mount /mnt/cdrom

#如输出错误为: mount: can't find cdrom in /etc /fstab or /etc/mtab

#可知在/etc/fstab找不到要挂载的文件

#有两种解决方式解决:

#1.输入命令:

#mount -t iso9660 /dev/cdrom /mnt/cdrom

#/dev/cdrom 为软连接指向的是hdc即是镜像文件的挂载盘,如提示没有权限在/dev 下赋权sr0

#这时候在输入命令:

#ls -l /mnt/cdrom

#敲击enter键显示的是你要挂载的iso文件里的所有文件,到此成功挂载镜像。

#如在执行#mount -t iso9660 /dev/cdrom /mnt/cdrom时提示:

#mount: block device /dev/sr0 is write-protected, mounting read-only

#只需要在mnt新建个cdrom的文件夹:

#mkdir -p /mnt/cdrom

#然后再执行:

#mount -t iso9660 /dev/cdrom /mnt/cdrom

##############################################################################################

 

 

#安装nfs-utils*

yum -y install nfs-utils*

 

#如果安装不成功请确认/etc/yum.repos.d/CentOS-Media.repo文件baseurl=file:///mnt 与挂载的路径一致

cd /etc/yum.repos.d/

vi CentOS-Media.repo

 

#如果没有该文件可以手动touch一个CentOS-Media.repo 然后进行配置

mkdir -p /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

cd /etc/yum.repos.d/

rename .repo .repo.bak *

touch /etc/yum.repos.d/CentOS-Media.repo

cat <<EOF >/etc/yum.repos.d/CentOS-Media.repo

[local]

name=local

baseurl=file:///mnt/cdrom

gpgcheck=0

enabled=1

EOF

 

 

 

7.安装grid前环境检查(只要在节点1执行)

 

#切换到grid用户先使用 find 命令查找文件是否存在

find $ORACLE_HOME -name runcluvfy.sh

/u01/app/11.2.0/grid/runcluvfy.sh

 

#在查找出来的文件路径后加stage -pre crsinst -n racdb1,racdb2 -verbose -fixup 执行检查命令

/u01/app/11.2.0/grid/runcluvfy.sh  stage -pre crsinst -n racdb1,racdb2 -verbose -fixup  

 

#或者进入/u01/app/11.2.0/grid/ 目录下执行

./runcluvfy.sh stage -pre crsinst -n racdb1,racdb2 -verbose -fixup

 

#第一次检查完后提示/tmp/CVU_12.2.0.1.0_grid/runfixup.sh 的话,在两个节点都执行下runfixup.sh

/tmp/CVU_12.2.0.1.0_grid/runfixup.sh

 

###################################################################################

CVU operation performed:      stage -pre crsinst

Date:                         Aug 2, 2020 1:59:56 AM

CVU home:                     /u01/app/11.2.0/grid/

User:                         grid

 

#检查命令跑到最后显示上面这个一般就没什么问题了,可以进入grid安装环节。

###################################################################################

 

 

8.安装grid

#上传解压grid 安装包并赋权给grid用户

chmod 775 grid/ -R

chown grid:oinstall grid/ -R

 

#切换grid用户执行  

./runInstaller

 

#如出现乱码执行   

export LANG=C

 

#图形化界面安装弹窗异常

./runInstaller -jreLoc /etc/alternatives/jre_1.8.0

 

安装过程中要注意的点:

1.scanname 要和etc/hosts 中的scan一致

2.安装过程中会弹出窗口需分别按顺序在rac1,2上使用root用户执行下面两个脚本(root.sh脚本耗时较长,等rac1执行完在执行rac2

/u01/app/oraInventory/orainstRoot.sh

/u01/app/11.2.0/grid/root.sh

3、安装grid执行root.sh脚本错误

/bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1

4.安装到100%时提示[INS-20802] Oracle Cluster Verification Utility failed.可以忽略。

 

 

9.安装database

 

#上传解压datebase 安装包并赋权给oracle用户

chmod 775 database/ -R    

chown oracle:oinstall database/ -R

 

#切换oracle用户

/soft/database下执行

./runInstaller

 

#出现INS-06001 解决办法

rac2节点上执行 ssh rac2 date 手动打通

 

#安装数据库软件makefile错误

makefile中添加链接libnnz11库的参数,修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将$(MK_EMAGENT_NMECTL),修改为:$(MK_EMAGENT_NMECTL) -lnnz11。 修改前可以先备份文件

 

SQL

[oracle@centos ~]$ cd $ORACLE_HOME/sysman/lib

[oracle@centos lib]$ cp ins_emagent.mk ins_emagent.mk.bak

[oracle@centos lib]$ vim ins_emagent.mk

SQL

#===========================

#  emdctl

#===========================

$(SYSMANBIN)emdctl:

        $(MK_EMAGENT_NMECTL)-lnnz11   在此处修改添加

#===========================

#  nmocat

#===========================

 

 

#查看文件夹大小

du -sh 文件名

 

#94%的时候弹出窗口后rac1,2上用root用户执行窗口中提示的

/u01/app/oracle/product/11.2.0/db/root.sh

 

10.创建磁盘组

切换grid用户

 

#查看环境变量

[grid@rac1 ~]$ env

确定DISPLAY=localhost:11.0 与实际地址一致或者直接为localhost:11.0

 

[grid@rac1 ~]$ asmca

 

这里要创建一下磁盘组,除了之前安装grid时创建的OCR磁盘组外还需要根据做多路径时的情况来创建,

 

我这里根据多路径时的配置创建了asmocrdisk1,asmocrdisk2 数据存储磁盘组以及asmdatadisk归档日志存储磁盘组

另外要注意的是NOrmal(标准)模式要选择2块以上的盘来创建磁盘组,而ExternalNone)外部存储则是每一块创建一个磁盘组。

 

 

#安装rac实例

[oracle@rac1 ~]$ dbca

 

 

#查看数据库启动状态

[grid@rac1 ~]$ crsctl status res -t

 

[oracle@rac1 ~]$ sqlplus /nolog

 

SQL> conn /as sysdba

 

11.维护命令

检查RAC运行状况

[grid@rac1 ~]$ crsctl check cluster

检查Database实例例状态

[oracle@rac1 ~]$ srvctl status database -d orcl

检查节点应用状态及配置

[oracle@rac1 ~]$ srvctl status nodeapps

[oracle@rac1 ~]$ srvctl config nodeapps -a -g -s -l

查看数据库配置

[oracle@rac1 ~]$ srvctl config database -d prod -a

检查 ASM状态及配置

[oracle@rac1 ~]$ srvctl status asm

[oracle@rac1 ~]$ srvctl config asm -a

检查 TNS的状态及配置

[oracle@rac1 ~]$ srvctl status listener

[oracle@rac1 ~]$ srvctl config listener -a

检查 SCAN 的状态及配置

[oracle@rac1 ~]$ srvctl status scan

[oracle@rac1 ~]$ srvctl config scan

检查 VIP的状态及配置

[oracle@rac1 ~]$ srvctl status vip -n rac1

[oracle@rac1 ~]$ srvctl status vip -n rac2

[oracle@rac1 ~]$ srvctl config vip -n rac1

[oracle@rac1 ~]$ srvctl config vip -n rac2

 

重启数据库的顺序

关闭

srvctl stop database -d orcl

crsctl stop cluster -all

crsctl stop has –f

开启

crsctl start has

crsctl start cluster -all

srvctl start database -d orcl

posted on   syq_xx  阅读(651)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)

导航

< 2025年3月 >
23 24 25 26 27 28 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
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示