一、基础环境准备
1、下载所需的操作系统镜像包和数据库安装包
-
链接: https://pan.baidu.com/s/1QM9lLCJhZ6La8zD7ngBRpw 提取码: n8vs
2、安装操作系统
本次安装以两节点 RAC 为例,需要两台虚机,参考配置内存 8g、CPU 4 核、用于存储数据的磁盘 40G,至少 2 个网卡,且网卡名称一致,两张网卡配置 IP 分别为 Public IP 地址、Private IP 地址,VIP 地址、SCAN IP 地址不需要配置在网卡上。
节点 | 操作系统版本 | 数据库版本 | 内存 | 磁盘 | 网卡 |
---|---|---|---|---|---|
节点1 | Oracle linux 7.5 | 11.2.0.4 | 4g | 40G | 双网卡 |
节点2 | Oracle linux 7.5 | 11.2.0.4 | 4g | 40G | 双网卡 |
以下步骤均需两个节点都操作。
下图为第二块网卡添加
选择加载下载的镜像包
点击开启虚拟机进行操作系统安装
选择第一行
点击enter,选择英文继续continue
选择时区上海
磁盘分区选择默认即可
选择安装方式,这里我们选择带桌面
开启双网卡
点击Begin Installation进行安装
设置管理员的密码
点击reboot,然后进行lincense授权,最后点击FINISH CONFIGURATION,至此安装完成
3、集群IP规划
RAC集群至少需要规划7个IP地址,两台虚机分别作为RAC 节点 1、节点 2,参考IP规划如下:
主机名 | rac1 | rac2 |
---|---|---|
Public IP 地址 | 192.168.59.243 | 192.168.59.243 |
VIP 地址 | 192.168.59.250 | 192.168.59.251 |
Private IP 地址 | 192.168.1.1 | 192.168.1.2 |
SCAN IP 地址 | 192.168.59.100 |
4、配置yum源(两个节点都执行)
-
[root@localhost network-scripts]# mount /dev/cdrom /mnt
-
[root@localhost network-scripts]# cat /etc/yum.repos.d/local.repo
-
> [local]
-
> name=local
-
> baseurl=file:///mnt
-
> gpgcheck=0
-
> enabled=1
-
> EOF
-
[root@localhost yum.repos.d]# cd /etc/yum.repos.d
-
[root@localhost yum.repos.d]# rm -rf public-yum-ol7.repo
-
[root@localhost yum.repos.d]# yum list all|wc -l
-
[root@localhost yum.repos.d]# yum makecache
5、安装依赖包(两个节点都执行)
-
yum install -y readline* binutils compat-libstdc++ compat-libstdc++ elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc glibc-common glibc-devel glibc-headers libaio libaio libaio-devel libaio-devel libgcc libgcc libstdc++ libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC unixODBC-devel unixODBC-devel binutils libaio-devel libaio elfutils-libelf-devel compat-libstdc++-33 libgcc gcc gcc-c++ glibc sysstat libstdc++ libstdc++-devel unixODBC-devel unixODBC
-
yum install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC-devel unixODBC -y
6、配置 IP 等相关服务
修改主机名
节点1:
-
[root@localhost ~]# hostnamectl set-hostname rac1
节点2:
-
[root@localhost ~]# hostnamectl set-hostname rac2
配置host文件(两台机器都执行)
-
cat /etc/hosts
-
#Public IP
-
192.168.59.243 rac1
-
192.168.59.244 rac2
-
#Private IP
-
192.168.1.1 rac1-priv
-
192.168.1.2 rac2-priv
-
#Vip IP
-
192.168.59.250 rac1-vip
-
192.168.59.251 rac2-vip
-
#Scan IP
-
192.168.59.100 rac-scan
-
EOF
节点1:
-
##配置Public IP
-
nmcli connection modify ens33 ipv4.addresses 192.168.59.243/24 ipv4.gateway 192.168.59.1 ipv4.method manual autoconnect yes
-
##配置Private IP
-
nmcli connection modify ens33 ipv4.addresses 192.168.1.1/24 ipv4.method manual autoconnect yes
-
##生效
-
nmcli connection up ens33
-
nmcli connection up ens34
节点2:
-
##配置Public IP
-
nmcli connection modify ens33 ipv4.addresses 192.168.59.244/24 ipv4.gateway 192.168.59.1 ipv4.method manual autoconnect yes
-
##配置Private IP
-
nmcli connection modify ens34 ipv4.addresses 192.168.1.2/24 ipv4.method manual autoconnect yes
-
##生效
-
nmcli connection up ens33
-
nmcli connection up ens34
7、关闭防火墙(两个节点都执行)
-
[root@localhost network-scripts]# systemctl stop firewalld
-
[root@localhost network-scripts]# systemctl disable firewalld
-
[root@localhost network-scripts]# systemctl status firewalld
8、关闭selinux(两个节点都执行)
-
[root@localhost network-scripts]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
-
[root@localhost network-scripts]# setenforce 0 #selinux 配置需要重启生效!
9、设置共享存储(两个节点都执行)
本例使用VM虚修改vmk文件使用udev。
在VMvare虚拟机上添加共享存储。本例OCR 盘采用 normal 冗余,数据文件盘采用 external 冗余,故需要3 块 20G 且没有挂载的 SATA 可共享磁盘作为 OCR,1 块 50G 且没有挂载的SATA 可共享磁盘作为数据文件存储。
节点1机器:
节点2机器:
在浏览中找到第一台添加好的硬盘
打开两个虚拟机的安装目录,在vmx文件最后添加(scsi1指定总线为1的所有盘):
-
scsi1.sharedBus = "virtual"
-
disk.locking = "false"
-
diskLib.dataCacheMaxSize = "0"
-
diskLib.dataCacheMaxReadAheadSize = "0"
-
diskLib.dataCacheMinReadAheadSize = "0"
-
diskLib.dataCachePageSize = "4096"
-
diskLib.maxUnsyncedWrites = "0"
-
disk.EnableUUID = "TRUE"
节点1:
-
[root@rac1 ~]# lsblk
节点2:
-
[root@rac2 ~]# lsblk
-
**两个节点都执行**:
-
[root@rac1 ~]# udevadm info -q all -n /dev/sdb|grep 'S: disk/by-id/scsi'
-
[root@rac1 ~]# udevadm info -q all -n /dev/sdc|grep 'S: disk/by-id/scsi'
-
[root@rac1 ~]# udevadm info -q all -n /dev/sdd|grep 'S: disk/by-id/scsi'
-
[root@rac1 ~]# udevadm info -q all -n /dev/sde|grep 'S: disk/by-id/scsi'
新建规则文件(两个节点都执行)
-
[root@rac1 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
-
KERNEL=="sd*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c29b726c700e3ad7a03c15281158", RUN+="/bin/sh -c 'mknod dev/asm-ocr1 b $major $minor; chown grid:asmadmin dev/asm-ocr1; chmod 0660 dev/asm-ocr1'"
-
KERNEL=="sd*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c2939804eef0627fec6584ac1965", RUN+="/bin/sh -c 'mknod dev/asm-ocr2 b $major $minor; chown grid:asmadmin dev/asm-ocr2; chmod 0660 dev/asm-ocr2'"
-
KERNEL=="sd*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c2959a11c65fe9051d08e5b5ae09", RUN+="/bin/sh -c 'mknod dev/asm-ocr3 b $major $minor; chown grid:asmadmin dev/asm-ocr3; chmod 0660 dev/asm-ocr3'"
-
KERNEL=="sd*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c2928974e5221143335907c14053", RUN+="/bin/sh -c 'mknod dev/asm-ocr4 b $major $minor; chown grid:asmadmin dev/asm-ocr4; chmod 0660 dev/asm-ocr4'"
重载udev(两个节点都执行)
-
[root@rac1 ~]# udevadm control --reload-rules
-
[root@rac1 ~]# udevadm trigger --type=devices --action=change
-
[root@rac1 ~]# ll /dev/asm*
10、关闭透明大页和 NUMA(两个节点都执行)
-
[root@rac1 ~]# sed -i 's/quiet/quiet transparent_hugepage=never numa=off/' /etc/default/grub
-
[root@rac1 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
11、avahi-daemon 配置(两个节点都执行)
-
yum install -y avahi*
-
systemctl stop avahi-daemon.socket
-
systemctl stop avahi-daemon.service
-
pgrep -f avahi-daemon | awk '{print "kill -9 "$2}'
-
配置 NOZEROCONF:
-
cat /etc/sysconfig/network
-
NOZEROCONF=yes
-
EOF
二、操作系统参数配置
1、配置系统参数(两个节点都执行)
-
cat /etc/sysctl.conf
-
#ORACLE SETTING
-
#可以拥有的异步IO请求数
-
fs.aio-max-nr = 1048576
-
#允许文件句柄的最大数目
-
fs.file-max = 6815744
-
#信号参数
-
kernel.sem = 250 32000 100 128
-
#IP V4的端口范围
-
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
-
#当系统检测到oops时,重新启动系统,以便系统能够重新初始化恢复正常工作
-
kernel.panic_on_oops = 1
-
#单个共享内存段最大值,让数据库在一个共享段里面的可以容纳整个SGA
-
#最大值:比物理内存小1字节
-
#(kernel.shmmax = 物理内存*1024*1024*1024-1)
-
kernel.shmmax = 2684354560
-
#控制共享内存页数(kernel.shmall = shmmax/4096)
-
kernel.shmall = 655360
-
#共享内存的最大数量
-
kernel.shmmni = 4096
-
#当系统内存使用90%的时候开始使用交换页面
-
vm.swappiness=10
-
#默认是100,增大这个参数设置了虚拟内存回收directory和i-node缓冲的倾向,这个值越大。越容易回收。
-
vm.vfs_cache_pressure=200
-
EOF
生效
-
sysctl -p
2、配置系统资源限制(两个节点都执行)
配置limits.conf
-
cat /etc/security/limits.conf
-
#ORACLE SETTING
-
#打开文件描述符大小
-
grid soft nproc 16384
-
grid hard nproc 16384
-
oracle soft nproc 16384
-
oracle hard nproc 16384
-
#单个用户可用的进程数
-
grid soft nofile 65536
-
grid hard nofile 65536
-
oracle soft nofile 65536
-
oracle hard nofile 65536
-
#进程堆栈段的大小
-
grid soft stack 32768
-
grid hard stack 32768
-
oracle soft stack 32768
-
oracle hard stack 32768
-
EOF
配置pam.d/login
-
cat /etc/pam.d/login
-
session required pam_limits.so
-
session required /lib64/security/pam_limits.so
-
EOF
三、创建用户及组、目录(两个节点都执行)
-
##组创建
-
/usr/sbin/groupadd -g 54321 oinstall
-
/usr/sbin/groupadd -g 54322 dba
-
/usr/sbin/groupadd -g 54323 oper
-
/usr/sbin/groupadd -g 54324 backupdba
-
/usr/sbin/groupadd -g 54325 dgdba
-
/usr/sbin/groupadd -g 54326 kmdba
-
/usr/sbin/groupadd -g 54327 asmdba
-
/usr/sbin/groupadd -g 54328 asmoper
-
/usr/sbin/groupadd -g 54329 asmadmin
-
/usr/sbin/groupadd -g 54330 racdba
-
#### 用户创建
-
/usr/sbin/useradd -u 11012 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba,oper grid
-
/usr/sbin/useradd -u 54321 -g oinstall -G asmdba,dba,backupdba,dgdba,kmdba,racdba,oper oracle
-
#### 修改用户密码为oracle
-
echo "oracle" |passwd oracle --stdin
-
echo "oracle" |passwd grid --stdin
-
#### 创建软件目录
-
mkdir -p /u01/app/11.2.0/grid
-
mkdir -p /u01/app/grid
-
mkdir -p /u01/app/oracle/product/11.2.0/db
-
mkdir -p /u01/app/oraInventory
-
mkdir -p /backup
-
mkdir -p /home/oracle/scripts
-
chown -R oracle:oinstall /backup
-
chown -R oracle:oinstall /home/oracle/scripts
-
chown -R grid:oinstall /u01
-
chown -R grid:oinstall /u01/app/grid
-
chown -R grid:oinstall /u01/app/11.2.0/grid
-
chown -R grid:oinstall /u01/app/oraInventory
-
chown -R oracle:oinstall /u01/app/oracle
-
chmod -R 775 /u01
四、配置环境变量(两个节点都执行)
grid 用户:
-
cat /home/grid/.bash_profile
-
################OracleBegin#########################
-
umask 022
-
export TMP=/tmp
-
export TMPDIR=\$TMP
-
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
-
export ORACLE_BASE=/u01/app/grid
-
export ORACLE_HOME=/u01/app/11.2.0/grid
-
export ORACLE_TERM=xterm
-
export TNS_ADMIN=\$ORACLE_HOME/network/admin
-
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
-
export ORACLE_SID=+ASM1
-
export PATH=/usr/sbin:\$PATH
-
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
-
alias sas='sqlplus as sysasm'
-
export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ '
-
EOF
-
[grid@rac1 ~]$ source /home/grid/.bash_profile
-
```shell
-
cat /home/grid/.bash_profile
-
################OracleBegin#########################
-
umask 022
-
export TMP=/tmp
-
export TMPDIR=\$TMP
-
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
-
export ORACLE_BASE=/u01/app/grid
-
export ORACLE_HOME=/u01/app/11.2.0/grid
-
export ORACLE_TERM=xterm
-
export TNS_ADMIN=\$ORACLE_HOME/network/admin
-
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
-
export ORACLE_SID=+ASM2
-
export PATH=/usr/sbin:\$PATH
-
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
-
alias sas='sqlplus as sysasm'
-
export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ '
-
EOF
-
[grid@rac2 ~]$ source home/grid/.bash_profile
-
![](https://admin.pgfans.cn/upload/editormd/20240714/0e9f625388218fdb107ab0261f91c794.png)
-
**oracle 用户**:
-
```shell
-
cat /home/oracle/.bash_profile
-
################OracleBegin#########################
-
umask 022
-
export TMP=/tmp
-
export TMPDIR=\$TMP
-
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
-
export ORACLE_BASE=/u01/app/oracle
-
export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db
-
export ORACLE_HOSTNAME=rac1
-
export ORACLE_TERM=xterm
-
export TNS_ADMIN=\$ORACLE_HOME/network/admin
-
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
-
export ORACLE_SID=orcl1
-
export PATH=/usr/sbin:\$PATH
-
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
-
alias sas='sqlplus as sysdba'
-
export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ '
-
################OracleEnd#########################
-
EOF
-
[oracle@rac1 ~]$ source home/oracle/.bash_profile
-
cat /home/oracle/.bash_profile
-
################OracleBegin#########################
-
umask 022
-
export TMP=/tmp
-
export TMPDIR=\$TMP
-
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
-
export ORACLE_BASE=/u01/app/oracle
-
export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db
-
export ORACLE_HOSTNAME=rac2
-
export ORACLE_TERM=xterm
-
export TNS_ADMIN=\$ORACLE_HOME/network/admin
-
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib
-
export ORACLE_SID=orcl2
-
export PATH=/usr/sbin:\$PATH
-
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
-
alias sas='sqlplus as sysdba'
-
export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ '
-
################OracleEnd#########################
-
EOF
-
[oracle@rac2 ~]$ source /home/oracle/.bash_profile
五、安装数据库
1、安装介质上传解压(节点1)
-
[root@rac1 ~]# mkdir /soft
将下载的三个包上传至/soft路径下
-
[root@rac1 ~]# cd /soft/
-
[root@rac1 soft]#unzip -q p13390677_112040_Linux-x86-64_1of7.zip
-
[root@rac1 soft]#unzip -q p13390677_112040_Linux-x86-64_2of7.zip
-
[root@rac1 soft]#unzip -q p13390677_112040_Linux-x86-64_3of7.zip
授权目录
-
chown -R oracle:oinstall /soft/database
-
chown -R grid:oinstall /soft/grid
root用户下,cvuqdisk安装(两个节点都执行)
-
cd /soft/grid/rpm
-
rpm -ivh cvuqdisk-1.0.9-1.rpm
传输到节点二安装
-
scp cvuqdisk-1.0.9-1.rpm rac2:/tmp
-
yum install -y smartmontools
-
rpm -ivh /tmp/cvuqdisk-1.0.9-1.rpm
六、安装 Grid 软件(节点1)
(一)安装VNC软件
1、安装VNC
-
[root@rac1 rpm]#su - root
-
[root@rac1 rpm]#sudo yum install tigervnc tigervnc-server -y
2、 修改配置
-
[root@rac1 rpm]# vim /etc/sysconfig/vncservers
-
添加以下内容:
-
# THIS FILE HAS BEEN REPLACED BY lib/systemd/system/vncserver@.service
-
# VNCSERVERS="桌面号:系统用户 桌面号:系统用户"
-
VNCSERVERS="1:grid 2:root"
-
# VNCSERVERARGS[桌面号]="-geometry 分辨率 -alwaysshared[允许多个客户端同时连接] -depth [色深,值有8,16,24,32]"
-
VNCSERVERARGS[1]="-geometry 1024x768 -alwaysshared -depth 24"
-
VNCSERVERARGS[2]="-geometry 1024x768 -alwaysshared -depth 24"
3、设置密码
-
[root@rac1 rpm]#vncpasswd
4、 启动服务
-
[root@rac1 rpm]# vncserver
5、grid用户下执行vncpasswd和 vncserver
-
[grid@rac1:/home/grid]$ vncpasswd
-
[grid@rac1:/home/grid]$ vncserver
、
6、oracle用户下执行vncpasswd和 vncserver
-
[oracle@rac1:/home/oracle]$ vncpasswd
-
[oracle@rac1:/home/oracle]$ vncserver
(二)开始安装grid软件
在vnc客户端界面输入192.168.56.243:1,输入刚才输入的密码即可连接。
-
[grid@rac2~]$source ~/.bash_profile
进入安装目录
-
[grid@rac2~]$cd /soft/grid
执行安装程序开始安装,加上jar包防止弹窗不显示问题
-
[grid@rac2~]$./runInstaller -jreLoc /etc/alternatives/jre_1.8.0
选择集群模式安装
自定义模式安装
选择语言
修改集群名称和 scan 名称
配置 grid 用户节点间互信
确认网络信息是否正确
选择ASM模式安装
填写 OCR 裁决盘信息,OCR 裁决盘这里冗余模式 External,Normal,High 对应磁盘数量为 1,3,5,这里我们选择Normal。也就是需要三块盘。
选择三块一样的磁盘
填写 ASM 实例 SYS 用户密码为 oracle
不使用IPMI
选择用户组
选择grid安装目录
安装前预检查
选择忽略即可
执行安装
-
yum install libXp.so.6 -y
执行 root 脚本(两个节点都执行)
-
[root@rac1 ~]# /u01/app/oraInventory/orainstRoot.sh
-
[root@rac1 ~]# /u01/app/11.2.0/grid/root.sh
没有打补丁的话,会报错
进行补丁的安装(两个节点都执行)
补丁安装
这里我们安装18370031补丁包
-
链接: https://pan.baidu.com/s/1_MOJ4eFwL3MCYTy3_OAvvA
-
提取码: hdi8
上传p18370031_112040_Linux-x86-64.zip补丁包
-
cd /soft
-
[root@rac1 soft]#unzip -q p18370031_112040_Linux-x86-64.zip
补丁包赋权
-
[root@rac1 soft]#chown -R grid:oinstall /soft/18370031
-
[root@rac1 soft]#chown -R grid:oinstall /u01
-
[root@rac1 soft]#chown -R grid:oinstall /u01/app/grid
-
[root@rac1 soft]#chown -R grid:oinstall /u01/app/11.2.0/grid
-
[root@rac1 soft]#chown -R grid:oinstall /u01/app/oraInventory
-
[root@rac1 soft]#chown -R oracle:oinstall /u01/app/oracle
开始安装18370031补丁(两个节点都需要执行)
-
opatch napply -oh $ORACLE_HOME -local /soft/18370031
节点2会报错,没有加载对应的java环境,我们手动去添加
-
[grid@rac2:/u01/app/11.2.0/grid/oui/bin]$ ./attachHome.sh -jreLoc /tmp/jdk
然后再执行补丁命令
-
[grid@rac2:/u01/app/11.2.0/grid/oui/bin]$opatch napply -oh $ORACLE_HOME -local /soft/18370031
安装过程中会报错,直接skip,不用管
Cause?-The plug-in failed in its perform method Action?-Refer to the logs or contact Oracle Support Services. Log File Location
/u01/app/oraInventory/logs/installActions2024-07-27_05-27-10PM.log
这个报错也直接skip
-
[grid@rac1:/home/grid]$ crs_stat -t
-
[grid@rac2:/home/grid]$ crs_stat -t
七、创建 ASM 数据盘 DATA
-
[grid@rac1:/home/grid]$ asmca
点击 create 创建 DATA盘
重启两台主机,检查重启后Grid集群是否正常运行
-
[grid@rac1:/home/grid]$ asmcmd lsdg
-
[grid@rac2:/u01/app/oraInventory/logs]$ asmcmd lsdg
八、安装Oracle软件
-
[oracle@rac1 ~]$ source ~/.bash_profile
-
[oracle@rac1:/home/oracle]$ cd /soft/database
执行安装程序开始安装,加上jar包防止弹窗不显示问题
-
[oracle@rac1:/home/oracle]$./runInstaller -jreLoc /etc/alternatives/jre_1.8.0
不配置 Oracle 邮件发送
跳过软件更新
选择仅安装 oracle 软件
配置 oracle 用户互信,输入密码,点击 setup 开始ssh互信
选择语言
选择企业版安装
检查用户组,默认即可
安装前预检查
选择ignore all即可
点击install开始oracle安装
[root@rac1 oraInventory]# sed -i ‘s/^(\s\$(MK_EMAGENT_NMECTL))\s$/\1 -lnnz11/g’ “$ORACLE_HOME/sysman/lib/ins_emagent.mk
[root@rac2 app]# sed -i ‘s/^(\s\$(MK_EMAGENT_NMECTL))\s$/\1 -lnnz11/g’ “$ORACLE_HOME/sysman/lib/ins_emagent.mk
执行 root.sh 脚本(两个节点都执行)
[root@rac1 oraInventory]# u01/app/oracle/product/11.2.0/db/root.sh
至此,Oracle 软件已经成功安装
九、创建数据库实例
-
[oracle@rac1:/soft/database]$ dbca
选择rac模式
选择创建数据库
选择自定义模板
填写数据库实例 ID
关闭 EM,保留自动化系统 JOB
填写 SYS 密码
选择存放数据的 ASM 盘DATA
报错的话,需要给oracle添加s权限
[grid@rac1:/home/grid]$ chmod +s /u01/app/11.2.0/grid/bin/oracle
这里选择不开启闪回区
选择自定义组件,默认即可
配置初始化参数
选择数据库字符集,默认字符集为 AL32UTF8
开始建库
如有报错,需执行以下命令(两个节点都执行)
-
[root@rac2 app]# mkdir -p /dev/asm
-
[root@rac2 app]# chown -R grid.asmadmin /dev/asm
-
[root@rac2 app]# chmod -R 777 /dev/asm
如出现以下错误,需要设置参数(两个节点都执行)
-
[grid@rac11 ~]$ ls -l /u01/app/11.2.0/grid/bin/oracle
-
-rwsr-x--x 1 grid oinstall 209836240 Jul 27 17:36 /u01/app/11.2.0/grid/bin/oracle
-
[grid@rac11 ~]$ chmod 6751 /u01/app/11.2.0/grid/bin/oracle
-
[grid@rac11 ~]$ ls -l /u01/app/11.2.0/grid/bin/oracle
-
-rwsr-s--x 1 grid oinstall 209836240 Jul 27 17:36 /u01/app/11.2.0/grid/bin/oracle
-
[oracle@rac11 ~]$ ls -l /u01/app/oracle/product/11.2.0/db_1/bin/oracle
-
-rwsr-sr-x 1 oracle asmadmin 239501472 Jul 27 23:12 /u01/app/oracle/product/11.2.0/db/bin/oracle
-
SQL> select status from v$instance;
-
SQL> select instance_number,instance_name,startup_time,status from gv$Instance;
[grid@rac1:/u01/app/11.2.0/grid/bin]$ srvctl stop database -d orcl
开启数据库实例
-
[grid@rac1:/u01/app/11.2.0/grid/bin]$srvctl start database -d orcl
至此,oracle 11g RAC搭建完成!
参考文章:
https://mp.weixin.qq.com/s/XTjngtkP19M17aR2fFa1dA
https://www.modb.pro/db/1703649053032665088
https://www.modb.pro/db/153861
文中的概念来源于互联网,如有侵权,请联系我删除。
欢迎关注公众号:小周的数据库进阶之路,一起交流数据库、中间件和云计算等技术。欢迎觉得读完本文有收获,可以转发给其他朋友,大家一起学习进步!感兴趣的朋友可以加我微信,拉您进群与业界的大佬们一起交流学习。