暂无图片
暂无图片
5
暂无图片
暂无图片
暂无图片

实战篇:SUSE 15 SP3 安装 Oracle 19C RAC 数据库

原创 Lucifer三思而后行 2021-11-08
8858

前言

这两天看到交流群里有朋友咨询 SUSE 15 SP3 安装 Oracle 19C RAC 遇到点问题,趁着周末有时间,抱着学习的心态,研究了一下如何安装,接下来就分享一下从零开始部署的流程!

总体来说,和 RHEL 部署流程上大同小异,主要是有一些命令不一样,废话不多说直接开始了~

❤️ Oracle安装包合集和补丁下载地址:2021年Oracle第三季度补丁合集

⭐️ 如果想要使用脚本安装,可以使用博主编写的 Oracle 一键安装脚本,同时支持单机和 RAC 集群模式!

开源项目:Install Oracle Database By Scripts!

更多更详细的脚本使用方式可以订阅专栏:Oracle一键安装脚本

目录

一、安装 SUSE 15 SP3

首先,我们去官网下载 15 SP3 的安装镜像:SUSE Linux Enterprise Server

镜像比较大,大概 12G 左右,开始安装系统!

本次演示的是 Parallel Desktop 虚拟机安装,其他虚拟机一样:

选取下载好的安装介质后,虚拟机名字为 SUSE01

由于是 19C RAC,因此配置物理内存为 8G:

至少需要2张网卡,因此添加一个网卡作为心跳:

挂载官网下载好的镜像源:

继续:

上面的步骤,其他的虚拟机或许不一样,下面的正式开始安装流程都是一致的:

选择语言环境和版本:

跳过注册:

建议安装过程中直接配置网络:

两张网卡,一张 eth0 用于公网,一张 eth1 用于心跳:

eth0:

eth1:

已配置好两张网卡:

配置主机名:

继续安装:

手工配置系统分区:

首先创建一个 /boot 分区:

将剩余磁盘空间创建为 LVM,用于系统安装:

创建 rootvg 分区:

创建 swaplv 分区:

创建根分区 rootlv:

选择时区:

不创建用户:

输入 root 密码:

关闭防火墙和kdump:

开始安装:

安装完成:

以同样的步骤安装第二个节点!

二、安装前配置

安装RAC前,当然要先做好规划。具体包含以下几方面:

节点 系统 Oracle版本 主机名 实例名 PublicIP PirvateIP VirtualIP SCANIP
1 SLSE 15 SP3 19C suse01 orcl1 10.211.55.100 10.10.10.1 10.211.55.102 10.211.55.105
2 SLSE 15 SP3 19C suse02 orcl2 10.211.55.101 10.10.10.2 10.211.55.103 10.211.55.105

1、系统规划

  • 主机名: 需要英文字母开头,建议小写,suse01/suse02
  • 集群名称: 长度不超过15位,suse-cluster
  • Linux系统版本: SLSE 15 SP3
  • 磁盘: 本地磁盘 64G,用于安装 OS,存放 grid 和 oracle 安装软件,用于 oracle 和 grid 安装目录
  • ASM共享盘:
    裁决盘OCR:OCR+VOTING=10G、冗余模式:EXTERNAL
    数据盘DATA:DATA=20G、冗余模式:EXTERNAL(数据文件,归档日志文件,spfile 文件等)
  • RU升级路径: 19C 的补丁已经不叫PSU,改为 RU

本次是从 19.3.0 升级到 19.13.0,Oracle 官网下载的基础版是 19.3.0!

⭐️ 如果想要使用脚本安装,可以使用博主编写的 Oracle 一键安装脚本,同时支持单机和 RAC 集群模式!

开源项目:Install Oracle Database By Scripts!

更多更详细的脚本使用方式可以订阅专栏:Oracle一键安装脚本

2、网络规划

Public IP(公司内部访问,非外网)

10.211.55.100 suse01 10.211.55.101 suse02

Private IP(用于节点间心跳网络)

10.10.10.1 suse01-priv 10.10.10.2 suse02-priv

Virtual IP(提供客户端访问,漂移)

10.211.55.102 suse01-vip 10.211.55.103 suse02-vip

SCAN IP(提供客户端访问,均衡)

10.211.55.105 suse-scan

3、存储规划

Oracle RAC 使用 ASM 存储来存放数据,通常使用 OCR 和 DATA 两个磁盘组!

磁盘名称 磁盘用途 磁盘大小
asm-ocr OCR/Voting File 10G
asm-data Data Files 20G

三、主机配置

📢 注意: 以下标题中(rac01&rac02)代表节点一和节点二都需要执行,(rac01)代表只需要节点一执行。

1、配置 zypper 源并安装依赖包(rac01&rac02)

Linux远程连接工具:

  • 本文将使用XShell和Xftp工具,安装包可以在官网下载,也可私信博主获取。
  • 其他工具也可以,比如:putty,SecureCRT 等等工具。

Parallels Desktop挂载Linux主机镜像:

挂载镜像:

mount /dev/cdrom /mnt df -Th /mnt

配置 zypper 源:

zypper ar -f /mnt/Module-Basesystem sle15 zypper ar -f /mnt/Module-Legacy sle15-Legacy zypper ar -f /mnt/Module-Development-Tools sle15-Tools

安装依赖包:

zypper in -y gcc bc binutils glibc glibc-devel insserv-compat libaio-devel libaio1 libX11-6 libXau6 libXext-devel libXext6 libXi-devel libXi6 libXrender-devel libXrender1 libXtst6 libcap-ng-utils libcap-ng0 libcap-progs libcap1 libcap2 libelf1 libgcc_s1 libjpeg8 libpcap1 libpcre1 libpcre16-0 libpng16-16 libstdc++6 libtiff5 libgfortran4 mksh make pixz rdma-core rdma-core-devel smartmontools sysstat xorg-x11-libs xz compat-libpthread-nonshared readline-devel

检查依赖包安装情况:

rpm -q gcc bc binutils glibc glibc-devel insserv-compat libaio-devel libaio1 libX11-6 libXau6 libXext-devel libXext6 libXi-devel libXi6 libXrender-devel libXrender1 libXtst6 libcap-ng-utils libcap-ng0 libcap-progs libcap1 libcap2 libelf1 libgcc_s1 libjpeg8 libpcap1 libpcre1 libpcre16-0 libpng16-16 libstdc++6 libtiff5 libgfortran4 mksh make pixz rdma-core rdma-core-devel smartmontools sysstat xorg-x11-libs xz compat-libpthread-nonshared readline-devel --qf '%{name}.%{arch}\n' | grep "未安装软件包" | wc -l

📢 注意: 依赖一定要安装成功,否则可能导致安装失败!

2、用户及组、目录创建(rac01&rac02)

创建安装 Oracle 数据库所需的用户、组以及安装目录:

/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 54330 racdba /usr/sbin/groupadd -g 54327 asmdba /usr/sbin/groupadd -g 54328 asmoper /usr/sbin/groupadd -g 54329 asmadmin

grid/oracle 用户创建并修改密码:

/usr/sbin/useradd -m -u 11012 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba,oper grid passwd grid /usr/sbin/useradd -m -u 54321 -g oinstall -G asmdba,dba,backupdba,dgdba,kmdba,racdba,oper oracle passwd oracle

查看用户组

id grid id oracle

3、创建软件目录:

mkdir -p /u01/app/19.3.0/grid mkdir -p /u01/app/grid mkdir -p /u01/app/oracle/product/19.3.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/19.3.0/grid chown -R grid:oinstall /u01/app/oraInventory chown -R oracle:oinstall /u01/app/oracle chmod -R 775 /u01

4、存储配置(rac01&rac02)

Windows 下配置 ISCSI 共享存储可参考:

一步步教你Windows配置ISCSI共享存储

配置好共享存储后,在 Linux 主机连接共享存储:

##iscsi识别共享存储 ##输出targetname,10.211.55.61 为iscsi共享存储设备 IP地址 iscsiadm -m discovery -t st -p 10.211.55.61

##连接共享存储 iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:10.211.55.61-lucifer -p 10.211.55.61 -l lsblk ## 设置开机自启动 iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:10.211.55.61-lucifer -p 10.211.55.61 -o update -n node.startup -v automatic

5、UDEV 配置共享存储:

设置 multipath 开机自启:

systemctl start multipathd systemctl enable multipathd systemctl status multipathd

配置 multipath 文件:

cat <<EOF >/etc/multipath.conf defaults { user_friendly_names yes } blacklist { devnode "^sda" } multipaths { multipath { wwid "$(/usr/lib/udev/scsi_id -g -u /dev/sdb)" alias ocr_1 } multipath { wwid "$(/usr/lib/udev/scsi_id -g -u /dev/sdc)" alias data_1 } } EOF

激活 multipath:

multipath -v2 multipath -ll

绑定 UDEV:

cd /dev/mapper for i in ocr_* data_*; do printf "%s %s\n" "$i" "$(udevadm info --query=all --name=/dev/mapper/"$i" | grep -i dm_uuid)" >>udev_info done while read -r line; do dm_uuid=$(echo "$line" | awk -F'=' '{print $2}') disk_name=$(echo "$line" | awk '{print $1}') echo "KERNEL==\"dm-*\",ENV{DM_UUID}==\"${dm_uuid}\",SYMLINK+=\"asm_${disk_name}\",OWNER=\"grid\",GROUP=\"asmadmin\",MODE=\"0660\"" >>/etc/udev/rules.d/99-oracle-asmdevices.rules done </dev/mapper/udev_info cat /etc/udev/rules.d/99-oracle-asmdevices.rules

生效 UDEV:

udevadm control --reload-rules udevadm trigger --type=devices ll /dev/asm_*

6、hosts文件配置(rac01&rac02)

配置hostname:

hostnamectl set-hostname suse01 hostnamectl set-hostname suse02

配置hosts文件:

cat <<EOF>>/etc/hosts #Public IP 10.211.55.100 suse01 10.211.55.101 suse02 #Private IP 10.10.10.1 suse01-priv 10.10.10.2 suse02-priv #Vip IP 10.211.55.102 suse01-vip 10.211.55.103 suse02-vip #Scan IP 10.211.55.105 suse-scan EOF

7、防火墙配置(rac01&rac02)

systemctl stop firewalld.service systemctl disable firewalld.service systemctl status firewalld.service

8、时间同步配置(rac01&rac02)

禁用 chronyd:

zypper in -y chrony timedatectl set-timezone Asia/Shanghai systemctl stop chronyd.service systemctl disable chronyd.service systemctl status chronyd.service

配置ntpdate时间同步计划任务:

zypper in -y ntp ##10.211.55.61 为时间服务器IP,每天12点同步系统时间 cat <<EOF>>/var/spool/cron/root 00 12 * * * /usr/sbin/ntpdate -u 10.211.55.61 && /usr/sbin/hwclock -w EOF ##查看计划任务 crontab -l ##手动执行 /usr/sbin/ntpdate -u 10.211.55.61 && /usr/sbin/hwclock -w

9、关闭透明大页、HLE和NUMA(rac01&rac02)

SUSE 15 SP3 配置内核文件,关闭透明大页和numa:

sed -i 's/quiet/quiet transparent_hugepage=never numa=off tsx=off/' /etc/default/grub grub2-mkconfig -o /boot/grub2/grub.cfg

重启后检查是否生效:

cat /sys/kernel/mm/transparent_hugepage/enabled cat /proc/cmdline

📢 注意: 关闭 透明大页HLEnuma 的配置,需要重启主机生效!

10、avahi-daemon 配置(rac01&rac02)

有些主机安装选择最小化安装,没有安装 avahi-daemon 功能,建议安装之后禁用,防止以后误操作导致出问题:

zypper in -y avahi* systemctl stop avahi-daemon.socket systemctl stop avahi-daemon.service pgrep -f avahi-daemon | awk '{print "kill -9 "$2}' systemctl disable avahi-daemon.service systemctl disable avahi-daemon.socket systemctl status avahi-daemon.service systemctl status avahi-daemon.socket

11、removeIPC

sed -i 's/#RemoveIPC=no/RemoveIPC=no/g' /etc/systemd/logind.conf systemctl daemon-reload systemctl restart systemd-logind

12、系统参数配置(rac01&rac02)

安装 Oracle 数据库需要配置系统参数,以下使用脚本命令一键式配置:

memTotal=$(grep MemTotal /proc/meminfo | awk '{print $2}') totalMemory=$((memTotal / 2048)) shmall=$((memTotal / 4)) if [ $shmall -lt 2097152 ]; then shmall=2097152 fi shmmax=$((memTotal * 1024 - 1)) if [ "$shmmax" -lt 4294967295 ]; then shmmax=4294967295 fi cat <<EOF >>/etc/sysctl.conf #OracleBegin ##shmmal's Calculation formula: physical memory 8G:(8*1024*1024*1024)/4096=2097152 ##shmmax's Calculation formula: physical memory 8G:(8/2)*1024*1024*1024 -1=4294967295 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = $shmall kernel.shmmax = $shmmax 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 #OracleEnd EOF

生效系统参数:

sysctl -p

13、系统资源限制配置(rac01&rac02)

配置limits.conf:

cat <<EOF>>/etc/security/limits.conf oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 32768 oracle soft nproc 2047 oracle hard nproc 16384 oracle hard memlock 134217728 oracle soft memlock 134217728 grid soft nofile 1024 grid hard nofile 65536 grid soft stack 10240 grid hard stack 32768 grid soft nproc 2047 grid hard nproc 16384 EOF

配置 pam.d/login:

cat <<EOF>>/etc/pam.d/login session required pam_limits.so session required /lib64/security/pam_limits.so EOF

配置 shm:

memTotal=$(grep MemTotal /proc/meminfo | awk '{print $2}') cat <<EOF >>/etc/fstab tmpfs /dev/shm tmpfs size=${memTotal}k 0 0 EOF mount -o remount /dev/shm df -Th /dev/shm

14、安装 rlwrap

cd /soft tar -xf rlwrap-0.42.tar.gz cd rlwrap-0.42 ./configure && make && make install cd /soft rm -rf rlwrap-0.42*

15、环境变量配置(rac01&rac02)

root 用户环境变量:

cat <<EOF >>/root/.profile ################OracleBegin######################### alias so='su - oracle' export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ ' alias crsctl='/u01/app/19.3.0/grid/bin/crsctl' alias sg='su - grid' ################OracleEnd########################### EOF

grid 用户环境变量:

cat <<EOF >>/home/grid/.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/19.3.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]\$ ' alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman' alias lsnrctl='rlwrap lsnrctl' alias asmcmd='rlwrap asmcmd' alias adrci='rlwrap adrci' ################OracleEnd########################### EOF

📢 注意: 每个节点的 ORACLE_SID 不一样(+ASM1/+ASM2),需要自行修改!

oracle用户环境变量:

cat <<EOF >>/home/oracle/.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=/u01/app/oracle/product/19.3.0/db export ORACLE_HOSTNAME=suse01 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' alias alert='tail -500f \$ORACLE_BASE/diag/rdbms/\$ORACLE_SID/\$ORACLE_SID/trace/alert_\$ORACLE_SID.log|more' export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ ' alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman' alias lsnrctl='rlwrap lsnrctl' alias asmcmd='rlwrap asmcmd' alias adrci='rlwrap adrci' alias ggsci='rlwrap ggsci' alias dgmgrl='rlwrap dgmgrl' ################OracleEnd########################### EOF

📢 注意: 每个节点的 ORACLE_HOSTNAME(suse01/suse02)和 ORACLE_SID(orcl1/orcl2)不一样,需要自行修改!

16、安装介质上传解压(rac01)

❤️ Oracle安装包合集和补丁下载地址:2021年Oracle第三季度补丁合集

安装包使用 XFTP 工具进行上传,只需要上传至一节点 /soft 目录下:

##上传安装介质到/soft目录 LINUX.X64_193000_db_home.zip LINUX.X64_193000_grid_home.zip p33182768_190000_Linux-x86-64.zip p6880880_190000_Linux-x86-64.zip

📢 注意: 19C 的安装包需要解压到对应的 ORACLE_HOME 目录下!

静默解压grid安装包:

chown -R grid:oinstall /soft su - grid -c "unzip -q /soft/LINUX.X64_193000_grid_home.zip -d /u01/app/19.3.0/grid/"

静默解压oracle安装包:

chown -R oracle:oinstall /soft su - oracle -c "unzip -q /soft/LINUX.X64_193000_db_home.zip -d /u01/app/oracle/product/19.3.0/db/"

静默解压 RU 补丁安装包:

cd /soft chown -R grid:oinstall /soft su - grid -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/19.3.0/grid" su - grid -c "unzip -q /soft/p33182768_190000_Linux-x86-64.zip -d /soft" chown -R oracle:oinstall /soft su - oracle -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/oracle/product/19.3.0/db" chown -R grid:oinstall /soft/33182768

📢 注意: 由于19C支持安装grid软件前打RU补丁,因此提前解压OPatch和RU补丁,为安装做准备!

root用户下,cvuqdisk安装(rac01&rac02):

rpm -ivh /u01/app/19.3.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm ##传输到节点二安装 scp /u01/app/19.3.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm suse02:/soft rpm -ivh /soft/cvuqdisk-1.0.10-1.rpm

📢 注意: 19C 版本的 cvu 包换位置了,目录为:$ORACLE_HOME/cv/rpm/,以上所有软件只需要在节点一上传解压即可。

至此,准备工作已经完成,安装前重启主机!

重启后,检查 numa 和透明大页:

📢 注意: 重启后别忘记两个节点 ISCSI 连接共享存储:

iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:10.211.55.61-lucifer -p 10.211.55.61 -l

四、安装Grid软件(rac01)

关于 VNC 配置具体可参考文章:

Linux 配置 VNC 远程桌面

配置 grid 用户 vnc 图形界面:

##root用户下切换到grid用户 chown -R grid:oinstall /soft su - grid ##执行vncserver,按提示输入密码即可 vncserver

在 vnc 客户端界面输入 10.211.55.100:2,输入刚才输入的密码即可连接:

打开终端命令行:

开始安装:

source ~/.profile cd $ORACLE_HOME ##执行安装程序开始安装,通过-applyRU参数指向补丁解压位置,提前安装grid补丁 ./gridSetup.sh -applyRU /soft/33182768

📢 注意: 可以看到,已经开始对 ORACLE_HOME 进行补丁安装。

补丁打完,进入安装界面,选择集群安装:

选择 standlone 模式:

修改 scan 名称,与 hosts 文件配置 scan 名称保持一致:

添加节点二信息,进行互信:

输入 grid 用户密码,创建用户时两节点必须保持一致。先执行 setup,再执行 test,开始互信:

确保对应网卡和IP网段对应即可,19C 心跳网段需要选 ASM & Private,用于 ASM 实例的托管:

选择存储类型,19C 只有两个选项,ASM 只能选 Flex:

GIMR,这里不选择安装:

安装时填创建 OCR 盘,一块盘冗余 External,目录选择 udev 绑的路径:

填写 sys/system 密码,需要记住自己设置的密码:

默认即可:

EM 选择不开,比较占资源,后面安装好后可以配置:

默认即可:

安装预检查:

两个节点执行依赖安装:

zypper in -y libcap-ng0-32bit libcap1-32bit libcap2-32bit libgcc_s1-32bit libXtst6-32bit nfs-kernel-server libXi6-32bit libXrender1-32bit libpcre1-32bit libpng16-16-32bit libstdc++6-32bit libaio1-32bit

重新检查后,剩下的报错都是 DNS 相关的,可直接忽略:

开始安装 grid:

两节点顺序执行 root.sh,先节点一执行完,再节点二执行:

两个节点的 root.sh 都执行完之后,继续安装:

这个错误查过 MOS 可以忽略:

安装完成:

检查集群状态:

crsctl stat res -t

检查 grid 补丁:

su - grid opatch lspatches sqlplus -version

五、创建 ASM 数据盘 DATA

这里创建的 DATA 磁盘组主要用于存放数据文件、日志文件等数据库文件!

使用图形化方式添加 ASM DATA 数据盘:

asmca

检查 asm 磁盘:

asmcmd lsdg

建议重启两台主机,检查重启后 Grid 集群是否正常运行!

六、安装Oracle软件

配置 oracle 用户 vnc 图形界面:

chown -R oracle:oinstall /soft ##root用户下切换到grid用户 su - oracle ##执行vncserver,按提示输入密码即可 vncserver ##在vnc客户端界面输入10.211.55.100:1,输入刚才输入的密码即可连接。

在 vnc 客户端界面输入 10.211.55.100:1,输入刚才输入的密码即可连接:

右键打开终端:

开始安装:

##应用环境变量 source ~/.profile ##进入ORACLE_HOME目录 cd $ORACLE_HOME ##执行安装程序开始安装,加上jar包防止弹窗不显示问题 ./runInstaller -applyRU /soft/33182768

📢 注意: 可以看到,已经开始对 ORACLE_HOME 进行补丁安装!

补丁打完,进入安装界面,选择仅安装 Oracle 软件:

选择集群模式:

输入 oracle 用户密码,先执行 setup,再执行 test,开始互信:

选择企业版:

默认即可:

安装预检查,由于我们只配了一个 SCAN,所以关于 DNS 相关的都无视,继续:

开始安装:

root 用户下,两个节点顺序执行 root.sh:

安装完成:

检查补丁版本:

su - oracle opatch lspatches sqlplus -version

七、创建数据库实例

这里建库还是在第四步安装 Oracle 软件的 vnc 界面中继续:

dbca

选择创建数据库实例:

选择自定义模式:

选择基础安装即可:

选择节点:

填写实例名orcl,由于默认添加为1,2,实例名规划为orcl1/2;选择安装 CDB 模式,不创建PDB:

默认即可,使用 OMF 模式:

不开闪回,不开归档,可以建完实例后再配置:

配置内存,使用 ASMM 模式,数据库总内存占用物理内存 70%-90% 之间:

使用基础模式安装,block_size 是无法修改的,process 进程数修改为1500,根据实际情况修改:

配置数据库字符集,默认 AL32UTF8,国家字符集,默认 AL16UTF16;根据实际情况修改:

建议全关掉,有可能导致 bug:

填写sys/system密码:

默认即可:

安装预检查,DNS 相关忽略:

开始安装:

经过漫长的等待,数据库建完了:

至此,数据库实例创建完成!

八、数据库优化配置(rac01)

1、开启数据库归档模式

关于开启归档模式,具体可参考文章:

Oracle 开启归档模式

##关闭数据库实例 srvctl stop database -d orcl ##开启单个节点到mount模式 srvctl start instance -d orcl -i orcl1 -o mount ##开启归档 sqlplus / as sysdba alter database archivelog; ##设置归档路径 ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=+DATA'; exit; ##重启数据库实例 srvctl stop instance -d orcl -i orcl1 srvctl start database -d orcl ##检查归档 sqlplus / as sysdba archive log list

2、配置定期删除归档计划任务

关于归档日志删除,具体可参考文章:

Oracle RMAN删除归档日志脚本

##进入oracle用户 su - oracle mkdir -p /home/oracle/scripts/ ##写入脚本 { echo '#!/bin/bash' echo 'source ~/.profile' echo 'deltime=`date +"20%y%m%d%H%M%S"`' echo "rman target / nocatalog msglog /home/oracle/scripts/del_arch_\${deltime}.log<<EOF" echo 'crosscheck archivelog all;' echo "delete noprompt archivelog until time 'sysdate-7';" echo "delete noprompt force archivelog until time 'SYSDATE-10';" echo 'EOF' } >>/home/oracle/scripts/del_arch.sh chmod +x /home/oracle/scripts/del_arch.sh

切换到 oracle 用户写入计划任务:

cat <<EOF>>/var/spool/cron/oracle 12 00 * * * /home/oracle/scripts/del_arch.sh EOF ##手动执行测试 su - oracle /home/oracle/scripts/del_arch.sh

3、配置数据库开机自启

配置数据库实例随集群服务自启动:

##root用户下执行 /u01/app/19.3.0/grid/bin/crsctl modify resource "ora.orcl.db" -attr "AUTO_START=always" -unsupported

📢 注意: ora.orcl.db 中的 orcl 是指 db 名称;需要在 root 用户下执行!

所有都配置完成之后,关闭数据库,重启主机!

最后修改时间:2023-05-15 17:21:18
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论