Oracle RAC 19.8 RHEL7.6 安裝手冊
Oracle RAC
19.8 RHEL7.6
安裝手冊
目錄
1. 整體規劃......................................................... 7
1.1. IP地址規劃................................................. 7
1.2. 操作系統本地磁盤分區規劃.................................... 8
1.3. 共享存儲與ASM磁盤組規劃.................................... 8
1.4. 數據庫相關介質.............................................. 9
2. 硬件及系統要求................................................... 9
2.1. 物理內存檢查................................................ 9
2.2. 交換空間檢查............................................... 10
2.3. 文件系統檢查............................................... 10
2.4. 系統剩余物理內存和交換空間檢查.............................. 11
2.5. 操作系統版本檢查........................................... 11
2.6. 共享內存大小檢查........................................... 11
2.7. 時區和時間檢查............................................. 11
2.8. 確保服務器上已安裝OpenSSH.................................. 12
3. 操作系統配置.................................................... 12
3.1. 配置主機名及解析文件....................................... 12
3.2. 配置 YUM 源................................................ 13
3.3. 安裝系統依賴包............................................. 13
3.4. 安裝compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm........... 15
3.5. 配置系統服務............................................... 15
3.6. 禁用SELINUX配置........................................... 15
3.7. 添加pam_limits.so模塊..................................... 15
3.8. 禁用透明大頁............................................... 16
3.9. 確認IO調度算法............................................ 17
3.10. 創建用戶組及用戶.......................................... 17
3.11. 修改LIMITS配置........................................... 17
3.12. 修改 grid 和 oracle 進程數量限制........................... 18
3.13. 修改默認shell啟動配置.................................... 19
3.14. 創建目錄................................................. 19
3.15. 設置grid用戶環境變量..................................... 20
3.16. 設置oracle 環境變量...................................... 22
3.17. 修改內核參數.............................................. 24
3.18. 時間服務................................................. 26
3.19. RemoveIPC處理............................................ 27
3.20. NOZEROCON................................................ 28
3.21. /etc/resolv.conf......................................... 28
3.22. 配置磁盤................................................. 28
3.23. 重啟操作系統.............................................. 31
4. 應用GI補丁,并安裝GRID軟件..................................... 32
4.1. 上傳并解壓軟件............................................. 32
4.2. 安裝cvuqdisk 包........................................... 32
4.3. 配置ssh雙機互信........................................... 32
4.4. 更新OPatch................................................ 33
4.5. 應用GI補丁,并安裝grid軟件................................ 34
4.5.1. 選擇安裝 new cluster................................. 35
4.5.2. 選擇standalone...................................... 36
4.5.3. 設置scan............................................ 37
4.5.4. 配置節點2 信息....................................... 38
4.5.5. 測試grid 用戶互信.................................... 39
4.5.6. 選擇網卡............................................. 42
4.5.7. 選擇使用ASM.......................................... 43
4.5.8. 選擇不使用 GI repository............................. 43
4.5.9. 配置磁盤組........................................... 44
4.5.10. 設置ASM 口令........................................ 46
4.5.11. 不使用IPMI......................................... 48
4.5.12. 不向EM 注冊......................................... 49
4.5.13. 確認用戶組.......................................... 50
4.5.14. 確認安裝路徑........................................ 51
4.5.15. 確認inventory 目錄.................................. 52
4.5.16. 選擇不自動運行腳本................................... 54
4.5.17. 安裝前檢測.......................................... 55
4.5.18. 可忽略檢測結果...................................... 56
4.5.19. 最后安裝前展示...................................... 58
4.5.20. 開始安裝............................................ 58
4.5.21. 兩個節點順序執行root.sh............................. 59
4.5.22. 安裝后狀態.......................................... 65
5. DataBase軟件安裝............................................... 66
5.1. 啟動安裝.................................................. 66
5.2. 只安裝軟件................................................. 66
5.3. 選擇集群安裝............................................... 67
5.4. 選中集群全部節點........................................... 68
5.5. 測試oracle 用戶互信....................................... 68
5.6. 選擇安裝企業版............................................. 70
5.7. 確認用戶組................................................. 71
5.8. 確認安裝路徑............................................... 71
5.9. 不自動運行腳本............................................. 72
5.10. 安裝前環境檢查............................................ 73
5.11. 可忽略選項................................................ 74
5.12. 安裝前檢查結果............................................ 75
5.13. 開始安裝................................................. 76
5.14. 運行root.sh.............................................. 77
6. RU 安裝 for DB.................................................. 78
6.1. 更新opatch 工具........................................... 79
6.2. 修改RU 補丁介質權限........................................ 79
6.3. 補丁沖突檢測............................................... 79
6.4. 編輯patch_list_dbhome.txt................................. 80
6.5. 補丁安裝前空間檢測......................................... 80
6.6. 安裝補丁.................................................. 81
7. 創建用于建庫的磁盤組............................................. 83
7.1. 啟動asmca................................................. 83
7.2. Asmca 管理頁面............................................ 83
7.3. 添加DATA磁盤組............................................ 84
7.4. DATA磁盤組創建成功........................................ 85
7.5. 添加FRA磁盤組............................................. 85
7.6. FRA磁盤組創建成功......................................... 86
8. DBCA建庫....................................................... 87
8.1. 啟動dbca.................................................. 87
8.2. 選擇高級配置............................................... 89
8.3. 選擇custom database....................................... 90
8.4. 選擇全部節點............................................... 91
8.5. 設置數據庫名稱和類型....................................... 92
8.6. 選擇數據文件存放類型和位置.................................. 92
8.7. 選擇不開啟歸檔和閃回....................................... 95
8.8. 選擇數據庫組件............................................. 95
8.9. 定制數據庫參數............................................. 97
8.9.1. 內存管理采用ASMM..................................... 97
8.9.2. 設置block size 和進程數量............................ 98
8.9.3. 設置字符集........................................... 99
8.10. 不運行腳本和向EM 注冊.................................... 100
8.11. 設置用戶初始口令......................................... 101
8.12. 不生成模板和建庫語句..................................... 102
8.13. 定制數據文件和聯機日志................................... 102
8.14. 建庫前檢查............................................... 107
8.15. 可忽略項目............................................... 108
8.16. 安裝信息匯總............................................. 110
8.17. 進行建庫安裝............................................. 111
8.18. 安裝完成集群狀態......................................... 113
1. 整體規劃
1.1. IP地址規劃
l 主機名允許使用字母、數字和中橫線(-),并且只能以字母開頭,不能以中橫線(-)結尾。(Doc ID 1603775.1)
l 兩節點rac建議DNS服務器環境配置3個SCANIP,否則配置1個SCANIP(/etc/hosts文件進行配置)。
l 私網需要使用獨立交換機,而不是網線對聯。
l 多套RAC使用同一私網交換機,需劃分成不同VLAN,或者使用不同網段。
本文檔配置:
共有7個IP地址,2塊網卡,其中public、vip和scan都在同一個網段,private在另一個網段;通過執行ifconfig -a檢查2個節點的網絡設備名字是否一致。另外,在安裝之前,公網、私網共4個IP可以ping通,其它3個不能ping通才是正常的。
|
節點/主機名 |
Interface Name |
地址類型 |
IP Address |
|
rac01 |
rac01 |
Public |
192.168.101.141 |
|
rac01 |
rac01-vip |
Virtual |
192.168.101.143 |
|
rac01 |
rac01-priv |
Private |
192.168.201.141 |
|
rac02 |
rac02 |
Public |
192.168.201.142 |
|
rac02 |
rac02-vip |
Virtual |
192.168.101.142 |
|
rac02 |
rac02-priv |
Private |
192.168.101.144 |
|
|
rac-scan |
scan |
192.168.101.145 |
注意事項:
1)19c GI搭建時,cluster_name不能超過15個字符,否則會在執行root.sh第16步,無法通過(報錯:clsrsc-119,crs-4000)。(文檔ID 2568395.1)
2)dbca建庫時在creation option時不要勾選“save as a database template”,否則在進行建庫時報錯 "PRCS-1046 : Name is not valid" 。(此問題是個bug。文檔id 2462400.1)
3)如果安裝19.5 且使用AFD綁定asm,需安裝小補丁29013832,否則AFD啟用會失敗。
1.2. 操作系統本地磁盤分區規劃
磁盤分區:建議最少分配如下
|
分區 |
大小 |
用途說明 |
|
/ |
10G |
根分區 |
|
/home |
10G |
家目錄 |
|
/tmp |
10G |
臨時文件目錄 |
|
swap |
16G |
交換空間 |
|
/u01 |
100G |
oracle和grid的安裝目錄 |
|
/stage |
20G |
安裝介質目錄 |
1.3. 共享存儲與ASM磁盤組規劃
存儲使用Oracle ASM管理。操作系統層通過udev綁定。如果使用afd參考以下文檔:
1.ASMFD (ASM Filter Driver) Support on OS Platforms (Certification Matrix). (Doc ID 2034681.1)
2.How to configure and Create a Disk group using ASMFD. (Doc ID 2053045.1)
存儲LUN規劃原則
l 數據文件和歸檔日志文件底層屬于不同的RAID組,ASM屬于不同磁盤組;
l 在線日志文件同一組中不同成員分別存儲在兩個DG中;
l 控制文件不同成員分別存儲在兩個DG中;
l OCR和VOTEDISK存放在數據之外單獨的ASM磁盤組。
|
uuid |
ASM磁盤名稱 |
磁盤組名稱 |
大小 |
用途 |
|
36000c29c9281767e241b7d3da610dc3c |
asm-ocr01 |
OCR |
2G |
OCR+VOTINGDISK |
|
36000c2922fe2cc579a6bc052ae6cec83 |
asm-ocr02 |
2G |
||
|
36000c29921fc4ef773ce5fc656bb7784 |
asm-ocr03 |
2G |
||
|
36000c2962d5712c80c1b32037277ea3c |
asm-data01 |
DATA |
8G |
數據文件 |
|
36000c296fa0ec892acb466962b4577ca |
asm-data02 |
8G |
||
|
36000c2939e8511088fae6bd494d6de6c |
asm-data03 |
8G |
||
|
36000c2913270b294841deb9807a49794 |
asm-fra |
FRA |
8G |
閃回區 |
1.4. 數據庫相關介質
安裝包Oracle database、Oracle grid只需要上傳到一節點。補丁跟OPatch兩個節點均需要上傳。
|
Oracle database |
LINUX.X64_193000_db_home.zip |
|
Oracle grid |
LINUX.X64_193000_grid_home.zip |
|
OPatch |
p6880880_190000_Linux-x86-64.zip |
|
GI+OJVM 19.8 |
p31305339_190000_gird_19.8.0.0.200714_Linux-x86-64.zip |
2. 硬件及系統要求
2.1. 物理內存檢查
檢查命令:
# grep MemTotal /proc/meminfo
建議配置:最少8GB,推薦16GB以上。
2.2. 交換空間檢查
檢查命令:
# grep SwapTotal /proc/meminfo
配置要求:
|
Between 4 GB and 16
GB: Equal to RAM 建議配置32GB。 |
2.3. 文件系統檢查
檢查命令:
# df -h
配置要求:
|
At least 1 GB of space in the temporary disk space (/tmp) directory. At least 12 GB of space
for the Oracle Grid Infrastructure for a cluster home (Grid home).
建議配置: 臨時文件系統/tmp至少為10GB,軟件文件系統/u01至少為80GB。
軟件文件系統格式: Ext4 (RHEL5.6+) XFS (supported when using OL7 or RHEL 7 or later) |
參見:
Supported and Recommended File Systems on Linux (文檔 ID 236826.1)
SLES 8, 9, 10, 11: Oracle DB 9i, 10g: Linux, Filesystem & I/O Type Supportability(文檔 ID 414673.1)
2.4. 系統剩余物理內存和交換空間檢查
檢查命令:
# free
2.5. 操作系統版本檢查
檢查命令:
# cat /etc/redhat-release
# uname -a
內核版本要求:
|
Red Hat Enterprise Linux 7 Oracle Linux 7 Unbreakable Enterprise Kernel (ueknano) 4.1.12-124.23.4 or later. |
2.6. 共享內存大小檢查
當oracle使用AMM自動內存管理時需要配置,如果使用ASMM自動共享內存管理則不需要此配置。
df -h /dev/shm的值需要大于oracle需要分配的memory內存。
檢查命令:
# df -h /dev/shm
2.7. 時區和時間檢查
檢查命令:
# date -R
# date +"%Z %z"
要求:為東8區,時間正確
如果時區不正確,按照以下步驟修改,例如西四區修改為東八區:
# date -R
Thu, 23 Apr 2020 04:50:47 -0400
# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
cp: overwrite ‘/etc/localtime’? yes
# date -R
Thu, 23 Apr 2020 16:51:02 +0800
2.8. 確保服務器上已安裝OpenSSH
rpm -qa | grep ssh
3. 操作系統配置
3.1. 配置主機名及解析文件
rac1/rac2修改主機名:
# hostnamectl set-hostname rac1
# su
rac1/rac2修改HOSTS文件示例:
# vi /etc/hosts
#############public##########
192.168.101.111 rac01
192.168.101.112 rac02
#############vip#############
192.168.101.113 rac01-vip
192.168.101.114 rac02-vip
#############priv############
192.168.201.111 rac01-priv
192.168.201.112 rac02-priv
#############scan############
192.168.101.115 rac-scan
3.2. 配置 YUM 源
光盤掛載方式:
mount /dev/cdrom /mnt
ISO掛載方式:
mount -o loop /xxx/rhel7.6.iso /mnt
編寫YUM配置文件:
cat >>/etc/yum.repos.d/ISO.repo <<EOF
[ISO]
name=iso
baseurl=file:///mnt
enabled=1
gpgchek=0
EOF
rpm --import /etc/pki/rpm-gpg/RPM*
yum clean all
yum makecache
3.3. 安裝系統依賴包
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
compat-libstdc++-33 \
compat-libcap1 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libXext \
libXtst \
kde-l10n-Chinese.noarch \
libstdc++-devel \
make \
xclock \
sysstat \
libvirt-devel \
man \
nfs-utils \
lsof \
expect \
unzip \
redhat-lsb \
openssh-clients \
smartmontools \
unixODBC \
perl \
telnet \
vsftpd \
ntsysv \
lsscsi \
libX11 \
libxcb \
libXau \
libXi \
strace \
sg3_utils \
kexec-tools \
net-tools \
nmap \
lrzsz \
tree \
dos2unix \
ncurses \
ncurses-devel \
xdpyinfo \
unixODBC-devel |grep "not installed" |awk '{print $2}' |xargs yum install -y
3.4. 安裝compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
cd /stage
rpm -ivh compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
3.5. 配置系統服務
禁用:
systemctl disable firewalld
systemctl disable avahi-daemon
systemctl disable bluetooth
systemctl disable cpuspeed
systemctl disable cups
systemctl disable firstboot
systemctl disable ip6tables
systemctl disable iptables
systemctl disable pcmcia
3.6. 禁用SELINUX配置
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
cat /etc/selinux/config |grep SELINUX
setenforce 0
getenforce
--返回Disabled,修改成功。
3.7. 添加pam_limits.so模塊
echo "session required pam_limits.so" >>/etc/pam.d/login
3.8. 禁用透明大頁
關閉Transparent HugePages特性(RHEL7):
需要先確認操作系統是否使用EFI啟動方式,使用df -h,如果存在/boot/efi掛載目錄的話,即為使用EFI啟動方式。
a. 將“transparent_hugepage=never“內核參數追加到/etc/default/grub文件中
#vi /etc/default/grub
GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap ... transparent_hugepage=never"
b. 重新生成grub配置文件
如果為BIOS啟動方式
grub2-mkconfig -o /boot/grub2/grub.cfg
如果為 EFI啟動方式
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
c. 重啟操作系統
#reboot
操作重啟之后,查看效果:
# cat /proc/cmdline
-->>>有此行
# cat /sys/kernel/mm/transparent_hugepage/enabled
-->>>[never]表示成功禁用THP。
# grep AnonHugePages /proc/meminfo
-->>>返回值若是零,代表成功禁用THP。
3.9. 確認IO調度算法
原先磁盤的IO算法是noop deadline [cfq]調度算法,這種算法是操作系統的默認算法,根據以往在Oracle調優上的建議,可以將這個算法修改為deadline模式。
從Rdhat 7.2開始 ,已經默認為dead line 算法,不需修改。
查看目前調度算法:
dmesg |grep scheduler |grep default
修改方法如下:
grubby --update-kernel=ALL --args="elevator=deadline" 重啟后生效
3.10. 創建用戶組及用戶
groupadd -g 1001 oinstall
groupadd -g 1002 dba
groupadd -g 1003 oper
groupadd -g 1004 asmadmin
groupadd -g 1005 asmoper
groupadd -g 1006 asmdba
useradd -u 1001 -g oinstall -G dba,asmadmin,asmdba,oper oracle
useradd -u 1002 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
chage -M -1 oracle
chage -M -1 grid
echo "123456" |passwd oracle --stdin
echo "123456" |passwd grid --stdin
說明 在rhel7 ,1000 以內的gid ,uid 為系統保留。盡量不要使用。
此處創建用戶后,設置口令為123456。
3.11. 修改LIMITS配置
cp /etc/security/limits.conf /etc/security/limits.conf.`date +%Y%m%d`
cat>>/etc/security/limits.conf<<EOF
grid soft nproc 8192
grid hard nproc 16384
grid soft nofile 8192
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
oracle soft nproc 8192
oracle hard nproc 16384
oracle soft nofile 8192
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
root soft stack 10240
root hard stack 32768
* soft memlock unlimited
* hard memlock unlimited
EOF
Memlock在HugePage環境開啟,單位為KB。(Memlock>=vm.nr_hugepages*2*1024)
當啟用HugePages內存時,memlock的值應該至少是當前RAM的90%,當禁用HugePages內存時,memlock的值至少是3145728 KB (3 GB)。
參見:What is Memlock and How to Calculate the Values for Memlock? (Doc ID 2511230.1)
3.12. 修改 grid 和 oracle 進程數量限制
echo "oracle soft nproc 16384" >>/etc/security/limits.d/20-nproc.conf
echo "grid soft nproc 16384" >>/etc/security/limits.d/20-nproc.conf
echo "oracle hard nproc 16384" >>/etc/security/limits.d/20-nproc.conf
echo "grid hard nproc 16384" >>/etc/security/limits.d/20-nproc.conf
如果是centos 修改 /etc/security/limits.d/90-nproc.conf
3.13. 修改默認shell啟動配置
修改/etc/profile,添加如下設置:
cat >>/etc/profile <<EOF
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
修改/etc/csh.login:
cat >>/etc/csh.log <<EOF
if ( \$USER = "oracle" || \$USER = "grid" ) then
limit maxproc 16384
limit descriptors 65536
endif
EOF
3.14. 創建目錄
依次在各個節點順序執行如下語句:
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory
mkdir -p /u01/app/grid
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01/app/grid
mkdir -p /u01/app/grid/diag
chown -R grid:oinstall /u01/app/grid/diag
chmod -R 775 /u01/app/grid/diag
mkdir -p /u01/app/19c/grid
chown -R grid:oinstall /u01/app/19c/grid
chmod -R 775 /u01/app/19c/grid
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
mkdir -p /u01/app/oracle/product/19c/db_1
chown -R oracle:oinstall /u01/app/oracle/product/19c/db_1
chmod -R 775 /u01/app/oracle/product/19c/db_1
3.15. 設置grid用戶環境變量
節點1:
# su - grid
$ vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/grid
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS333=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG=american_america.AL32UTF8
export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32
export LD_LIBRARY_PATH=$ORACLE_HOME/jdk/jre/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/rdbms/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$LD_LIBRARY_PATH
export CLASS_PATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$HOME/bin:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
if [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
節點2:
# su - grid
$ vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=+ASM2
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/grid
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS333=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG=american_america.AL32UTF8
export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32
export LD_LIBRARY_PATH=$ORACLE_HOME/jdk/jre/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/rdbms/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$LD_LIBRARY_PATH
export CLASS_PATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$HOME/bin:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
if [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
3.16. 設置oracle 環境變量
節點1:
# su - oracle
$ vi .bash_profile
export LANG=en_US
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orcl1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19c/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS333=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG=american_america.AL32UTF8
export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32
export LD_LIBRARY_PATH=$ORACLE_HOME/jdk/jre/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/rdbms/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$LD_LIBRARY_PATH
export CLASS_PATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$HOME/bin:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
節點2:
# su - oracle
$ vi .bash_profile
export LANG=en_US
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orcl2
export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=/oracle/app/oracle/product/19c/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS333=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG=american_america.AL32UTF8
export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32
export LD_LIBRARY_PATH=$ORACLE_HOME/jdk/jre/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/rdbms/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$LD_LIBRARY_PATH
export CLASS_PATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:.
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$HOME/bin:$PATH
NAME=`hostname`
PS1="[$NAME:$LOGNAME]:\${PWD}>"
umask 022
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
3.17. 修改內核參數
修改內核參數(結合實際環境修改):
cat>>/etc/sysctl.conf<<EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmax = xxx #填入命令echo "`cat /proc/meminfo | grep "MemTotal" | awk '{print $2}'` * 1024 * 0.8" | bc | sed 's#\..*$##' 的運行結果
kernel.shmall = xxx #填入命令echo "`cat /proc/meminfo | grep "MemTotal" | awk '{print $2}'` / (`getconf PAGESIZE` / 1024)" | bc 的運行結果
kernel.shmmni = 4096
kernel.sem = 250 256000 100 1024
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 10485860
net.core.wmem_default = 262144
net.core.wmem_max = 10485860
vm.min_free_kbytes = 524288
net.ipv4.ipfrag_high_thresh = 16777216
net.ipv4.ipfrag_low_thresh = 15728640
vm.swappiness = 10
vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
# vm.nr_hugepages = 512
EOF
執行命令生效
# sysctl -p
參數解釋:
kernel.shm*參數
SHMMAX設置為物理內存80%,必須大于所有實例的SGA大小,單位為字節。
SHMALL為SHMMAX除以4096。
kernel.shmmax = 137438953472 (128GB)
kernel.shmall = kernel.shmmax/4K
kernel.sem參數
默認配置支持8個數據庫實例,如果超過該值,按照比例翻倍處理
kernel.sem = 250 32000 100 128
vm.nr_hugepages參數
SGA內存超過8GB時候,配置HugePage,對應參數vm.nr_hugepages,單位為2MB,設置大小為所有SGA_MAX_SIZE/2MB,配置后ASM實例也需要修改為ASSM。
vm.nr_hugepages = 512
fs.file-max參數
fs.file-max = 512 x processes
vm.min_free_kbytes參數
配置最小保留內存,默認為512MB,如果物理內存超過128GB,按照比例翻倍。
vm.min_free_kbytes = 524288
net.core.wmem_max參數
當使用RDS作為私網時候,設置為2097152。
net.core.wmem_default = 2097152
net.ipfrag_*_thresh參數
容易觸發BUG,RHEL 6.6+/7.1+需要修改,
參考文檔:RHEL 6.6: IPC Send timeout/node eviction etc with high packet reassembles failure (文檔 ID 2008933.1)
net.ipv4.ipfrag_high_thresh = 16777216
net.ipv4.ipfrag_low_thresh = 15728640
確認:cat /proc/sys/net/ipv4/ipfrag_*_thresh
另解決方案:
升級內核到Red Hat Enterprise Linux 6.8 - kernel-2.6.32-642.el6
升級內核到Red Hat Enterprise Linux 6.7.z - kernel-2.6.32-573.8.1.el6
參考文檔:RHEL 6.6: IPC Send timeout/node eviction etc with high packet reassembles failure (文檔 ID 2008933.1)
kernel.panic_on_oops參數
Oracle 12.1.0.2.0+配置參數。
kernel.panic_on_oops = 1
ASLR參數
Address Space Layout Randomization (ASLR)
物理內存地址是否隨機分配,應當禁用。
kernel.randomize_va_space=0
kernel.exec-shield=0
3.18. 時間服務
需確認是否有時間同步服務器,使用哪種方式進行同步進行同步,以下分別為使用NTP服務、chrony服務、CTSS服務的例子。
① 使用NTP服務(RHEL7)
在RHEL7/OL7平臺,NTP服務被Chrony服務替換,需要禁用Chrony,并安裝NTP。
禁用chronyd服務:
To stop chronyd, issue the following command as root:
# systemctl stop chronyd
To prevent chronyd from starting automatically at system start, issue the following command as root:
# systemctl disable chronyd
安裝NTP包:
# yum install ntp
啟用NTP服務:
# systemctl enable ntpd.service
# systemctl start ntpd.service
如果使用NTP同步,需要開啟slew time:
# vi /etc/sysconfig/ntpd
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
systemctl restart ntpd.service
配置NTP服務:
# vi /etc/ntp.conf
server <NTP_SERVER_ADDR> iburst
停止NTP服務,手動同步時間:
systemctl stop ntpd.service
ntpdate -b <NTP_SERVER_ADDR>
systemctl start ntpd.service
時鐘寫回主板:
hwclock --systohc
hwclock;date
② 使用Chrony服務
配置Chrony參數文件:
vi /etc/chrony.conf
server <NTP_SERVER_ADDR> iburst
重啟時間同步服務:
systemctl restart chronyd.service
systemctl enable chronyd.service
查看時間同步源:
chronyc sources -v
時鐘寫回主板:
hwclock --systohc
hwclock;date
③ 使用CTSS服務
在沒有時鐘源的環境,采用RAC自帶的CTSS做節點間時鐘同步。
systemctl mask chronyd
systemctl mask ntpd
mv /etc/ntp.conf /etc/ntp.conf.bak
crsctl check ctss
3.19. RemoveIPC處理
在RHEL7.2中,systemd-logind 服務引入了一個新特性,該新特性是:當一個user 完全退出os之后,remove掉所有的IPC objects。
解決方法:
1) Set RemoveIPC=no in /etc/systemd/logind.conf
2) Reboot the server or restart systemd-logind as follows:
# systemctl daemon-reload
# systemctl restart systemd-logind
3.20. NOZEROCON
當系統無法連接DHCP server的時候,就會嘗試通過ZEROCONF來獲取IP。然后網卡將會被設置為 169.254.0.0段的地址,可以禁止這項功能。
# echo "NOZEROCONF=yes" >> /etc/sysconfig/network
3.21. /etc/resolv.conf
# mv /etc/resolv.conf /etc/resolv.conf.bak
3.22. 配置磁盤
根據系統使用存儲的不同,配置磁盤,進行磁盤名稱持久化的方法略有不同。
① 如果使用虛擬機安裝集群
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
輸出示例如下:
|
/dev/sdc: 2 36000c29c9281767e241b7d3da610dc3c /dev/sdb: 2 36000c2922fe2cc579a6bc052ae6cec83 /dev/sdd: 2 36000c29921fc4ef773ce5fc656bb7784 /dev/sdf: 8 36000c2962d5712c80c1b32037277ea3c /dev/sde: 8 36000c296fa0ec892acb466962b4577ca /dev/sdh: 8 36000c2939e8511088fae6bd494d6de6c /dev/sdg: 8 36000c2913270b294841deb9807a49794 |
編輯/etc/udev/rules.d/99-oracle-asmdevice.rules
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c29c9281767e241b7d3da610dc3c", SYMLINK+="asm-ocr01", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c2922fe2cc579a6bc052ae6cec83", SYMLINK+="asm-ocr02", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c29921fc4ef773ce5fc656bb7784", SYMLINK+="asm-ocr03", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c2962d5712c80c1b32037277ea3c", SYMLINK+="asm-data01", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c296fa0ec892acb466962b4577ca", SYMLINK+="asm-data02", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c2939e8511088fae6bd494d6de6c", SYMLINK+="asm-data03", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c2913270b294841deb9807a49794", SYMLINK+="asm-fra01", OWNER="grid", GROUP="asmadmin", MODE="0660"
執行如下語句,進行磁盤名稱和權限持久化
/sbin/udevadm control --reload-rules
/sbin/udevadm trigger --type=devices --action=change
ll /dev/asm*
ll /dev |grep grid
示例輸出如下:
② 如磁盤使用powerpath (emc),dlnkmgr(日立)等磁盤聚合軟件
格式為:
KERNEL=="emcpowerc", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="36006016053d04100206ca35f5aa3e5f0", SYMLINK+="asm_vote1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="emcpowerd", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="36006016053d04100056da35f88a6ba98", SYMLINK+="asm_vote2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="emcpowere", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="36006016053d04100ca6da35fe3166158", SYMLINK+="asm_vote3", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="emcpowerf", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="36006016053d041008471a35f61bd4cff", SYMLINK+="asm_arch1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="emcpowerg", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="36006016053d04100b672a35fd8931158", SYMLINK+="asm_fra1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNRL 部分為聚合后磁盤名稱
③ 如使用multipath 進行聚合
格式為:
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a30002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-crs-vote1"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a40002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-crs-vote2"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a50002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-crs-vote3"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a60002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-datadg-disk1"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a70002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-datadg-disk2"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a80002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-datadg-disk3"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009a90002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-fradg-disk1"
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-360002ac000000000000009aa0002195d", ACTION=="add|change", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="asm-fradg-disk2"
④ 如使用磁盤分區
格式為:
SUBSYSTEM=="block",KERNEL=="sdb1",GROUP="admadmin",OWNER=="grid",MODE=="0660"
SUBSYSTEM=="block",KERNEL=="sdb2",GROUP="admadmin",OWNER=="grid",MODE=="0660"
SUBSYSTEM=="block",KERNEL=="sdb3",GROUP="admadmin",OWNER=="grid",MODE=="0660"
KERNEL 部分為分區名稱
3.23. 重啟操作系統
# reboot
4. 應用GI補丁,并安裝GRID軟件
4.1. 上傳并解壓軟件
在一節點,修改介質權限,用grid用戶將grid軟件解壓到$OACLE_HOME中。
# cd /stage
# chown -R grid:oinstall LINUX.X64_193000_grid_home.zip
# su - grid
$ cd /stage
$ unzip LINUX.X64_193000_grid_home.zip -d $ORACLE_HOME >/tmp/unzip_gihome.log
在一節點,修改介質權限,用oracle用戶將database文件解壓到$OACLE_HOME中。
# cd /stage
# chown -R oracle:oinstall LINUX.X64_193000_db_home.zip
# su - oracle
$ cd /stage
$ unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME >/tmp/unzip_dbhome.log
4.2. 安裝cvuqdisk 包
cvuqdisk 包位于grid軟件的解壓目錄中,使用root用戶安裝cvuqdisk 包,兩個節點都需要安裝,從1節點拷貝到2節點:
# cd /u01/app/19c/grid/cv/rpm
# rpm -ivh cvuqdisk*.rpm
4.3. 配置ssh雙機互信
一節點的oracle用戶:
su - oracle
cd $ORACLE_HOME/deinstall/
./sshUserSetup.sh -user oracle -hosts "rac01 rac01-priv rac02 rac02-priv" -advanced -noPromptPassphrase
一節點的grid用戶:
su - grid
cd $ORACLE_HOME/deinstall/
./sshUserSetup.sh -user grid -hosts "rac01 rac01-priv rac02 rac02-priv" -advanced -noPromptPassphrase
在兩個節點上驗證ssh配置正確(執行下述命令無需輸入口令):
grid用戶:
su - grid
ssh rac01 date
ssh rac02 date
ssh rac01-priv date
ssh rac02-priv date
oracle用戶:
su - oracle
ssh rac01 date
ssh rac02 date
ssh rac01-priv date
ssh rac02-priv date
如果/etc/ssh/sshd_config配置文件中的LoginGraceTime沒有被注釋掉,則修改/etc/ssh/sshd_config配置文件中的LoginGraceTime為0:
#vi /etc/ssh/sshd_config
LoginGraceTime 0
這里缺省情況下LoginGraceTime已經被注釋掉了:
4.4. 更新OPatch
在一節點,上傳opatch 工具(version 12.2.0.21)以grid 用戶解壓縮
su - grid
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bak
cd /stage
unzip p6880880_122010_12.2.0.1.21_Linux-x86-64.zip -d $ORACLE_HOME
安裝前,版本為:
安裝完成后,版本為:
4.5. 應用GI補丁,并安裝grid軟件
在一節點,使用root用戶解壓GI補丁,修改解壓文件權限,啟動安裝:
cd /stage
unzip p31305339_190000_gird_19.8.0.0.200714_Linux-x86-64.zip
chmod -R 775 31305339
su - grid
who am i
export DISPLAY=192.168.101.1:0.0
$ORACLE_HOME/gridSetup.sh -applyPSU /stage/31305339
/stage/31305339 為RU 補丁的解壓縮后的路徑。
這個過程需要一點時間,耐心等待即可;應用補丁后,會啟動安裝。
4.5.1. 選擇安裝 new cluster
4.5.2. 選擇standalone
4.5.3. 設置scan
Scan name 需要與/etc/hosts 文件配置嚴格一致。
4.5.4. 配置節點2 信息
點擊add 按鈕,添加節點2信息。
必須與/etc/hosts 內容嚴格一致。
4.5.5. 測試grid 用戶互信
單擊“SSH Connectivity”按鈕:
單擊Test按鈕,應該出現以下窗口,如果以下窗口不能出現,則說明SSH配置有問題,請退出安裝程序,修改ssh配置,然后重新執行上述步驟:
單擊“OK”按鈕。
4.5.6. 選擇網卡
4.5.7. 選擇使用ASM
4.5.8. 選擇不使用 GI repository
不安裝集群配置管理庫。如果安裝建議單獨分配磁盤。在這有點區別,12選no也會強制裝,而且不能將mgmtdb單獨裝在一個磁盤,導致ocr磁盤不能少于40g。18的時候可以單獨分,19選擇no不裝。
4.5.9. 配置磁盤組
點擊change discovery path 按鈕,根據實際情況,修改磁盤掃描路徑。
選擇需要的磁盤
不選擇ASFD
4.5.10. 設置ASM 口令
4.5.11. 不使用IPMI
4.5.12. 不向EM 注冊
4.5.13. 確認用戶組
4.5.14. 確認安裝路徑
應與grid 環境變量中配置一致
4.5.15. 確認inventory 目錄
應與 grid 環境變量中配置一致
4.5.16. 選擇不自動運行腳本
4.5.17. 安裝前檢測
4.5.18. 可忽略檢測結果
此處需要說明的是:
1)libvirt-deve-4.5.0-10.0和libvirt-libs-4.5.0-10.0期望版本和已安裝版本不一致,可忽略;
2)resolv.conf為DNS解析的配置,可忽略;
3)由于沒有配置Ntp,dns和scan可以選擇忽略;
因此可以選擇“Ignore All”,然后單擊“Next”按鈕執行下一步。
4.5.19. 最后安裝前展示
4.5.20. 開始安裝
0% 這個階段會持續時間較長
4.5.21. 兩個節點順序執行root.sh
以root用戶登陸系統,執行上面的腳本,順序如下:
在一節點上執行腳本1,在二節點上執行腳本1;
在一節點上執行腳本2,在二節點上執行腳本2。
Root用戶運行腳本
第一個腳本:
節點一:
節點二:
第二個腳本:
節點一:
節點二:
跑完腳本點ok
點ok,next,這個報錯是由于scan引起的可以忽略。
點close至此集群安裝完畢。
4.5.22. 安裝后狀態
檢查集群狀態:
檢查兩節點補丁是否一致,分別在兩節點執行:
crsctl query crs softwarepatch
5. DataBase軟件安裝
5.1. 啟動安裝
su - oracle
who am i
export DISPLAY=192.168.101.1:0.0
$ORACLE_HOME/runInstaller
5.2. 只安裝軟件
5.3. 選擇集群安裝
5.4. 選中集群全部節點
5.5. 測試oracle 用戶互信
單擊“SSH Connectivity”按鈕:
單擊Test按鈕,應該出現以下窗口,如果以下窗口不能出現,則說明SSH配置有問題,請退出安裝程序,修改ssh配置,然后重新執行上述步驟:
5.6. 選擇安裝企業版
5.7. 確認用戶組
5.8. 確認安裝路徑
安裝路徑應與oracle 環境變量里設置相同
5.9. 不自動運行腳本
5.10. 安裝前環境檢查
5.11. 可忽略選項
5.12. 安裝前檢查結果
5.13. 開始安裝
5.14. 運行root.sh
根據提示,以root 用戶在兩個節點順序執行root.sh。
運行root.sh腳本
節點一:
節點二:
至此數據庫軟件安裝完畢。
6. RU 安裝 for DB
由于在安裝階段已經為GI 安裝了補丁。因此只需為DB安裝補丁。
6.1. 更新opatch 工具
在全部節點,上傳opach補丁介質,并以oracle 用戶解壓opatch
su - oracle
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bak
cd /stage
unzip p6880880_122010_12.2.0.1.21_Linux-x86-64.zip -d $ORACLE_HOME
升級后opatch版本
6.2. 修改RU 補丁介質權限
將補丁上傳到2節點,在2節點解壓并修改RU 補丁介質權限。
cd /stage
unzip p31305339_190000_gird_19.8.0.0.200714_Linux-x86-64.zip
chmod -R 775 31305339
6.3. 補丁沖突檢測
以oracle 執行:
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /stage/31305339/31281355
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /stage/31305339/31305087
此處命令,應嚴格參考RU readme.html
/satge 為解壓后補丁路徑
示例輸出:
6.4. 編輯patch_list_dbhome.txt
此處應嚴格參照readme
在兩個節點,以oracle 用戶執行:
cat >>/tmp/patch_list_dbhome.txt <<EOF
/stage/31305339/31281355
/stage/31305339/31305087
EOF
6.5. 補丁安裝前空間檢測
安裝集群軟件,集群補丁,數據庫軟件后,會消耗接近20G空間
以oracle 用戶,在兩個節點執行
$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_dbhome.txt
示例如下:
6.6. 安裝補丁
按照節點1,節點2 的順序安裝補丁
以root 用戶執行,調用ORACLE_HOME 下的opatch
export ORACLE_HOME=/u01/app/oracle/product/19c/db_1
export PATH=$ORACLE_HOME/OPatch:$PATH
$ORACLE_HOME/OPatch/opatchauto apply /stage/31305339 -oh /u01/app/oracle/product/19c/db_1
過程日志存放在$ORACLE_HOME/ cfgtoollogs/opatchautodb 目錄下
日志輸出如下:
其中,兩個補丁被跳過
安裝成功后,補丁顯示如下
7. 創建用于建庫的磁盤組
7.1. 啟動asmca
在1節點,以grid 用戶執行
su - grid
export DISPLAY=192.168.101.1:0.0
asmca
7.2. Asmca 管理頁面
7.3. 添加DATA磁盤組
點擊左側 Disk Groups
點擊左下部,create 按鈕
填寫磁盤組信息
點擊OK 按鈕
DATA磁盤組創建成功:
7.4. DATA磁盤組創建成功
7.5. 添加FRA磁盤組
點擊左下部,create 按鈕
填寫磁盤組信息
點擊OK 按鈕
FRA磁盤組創建成功。
7.6. FRA磁盤組創建成功
點擊exit 退出
8. DBCA建庫
在節點1 ,以oracle 用戶執行
8.1. 啟動dbca
su - oracle
export DISPLAY=192.168.101.1:0.0
dbca
選擇create a database
8.2. 選擇高級配置
8.3. 選擇custom database
8.4. 選擇全部節點
8.5. 設置數據庫名稱和類型
數據庫名稱應與環境變量設置一致
根據實際需要,選擇是否使用cdb。
這里選擇創建容器數據庫。
如果想創建為傳統類型數據庫,不要選定 create as container database 選項。
8.6. 選擇數據文件存放類型和位置
如果需要配置控制文件和日志日志文件多路徑,點擊 Multiplex redo logs and control files ...
填寫放置控制文件和日志日志文件的磁盤組:
點擊OK
8.7. 選擇不開啟歸檔和閃回
歸檔和閃回可根據實際需要后期進行配置
8.8. 選擇數據庫組件
根據需要選擇需要安裝的組件。
8.9. 定制數據庫參數
8.9.1. 內存管理采用ASMM
內存大小根據實際情況調整
8.9.2. 設置block size 和進程數量
Blocksize 根據客戶要求設定
進程數量不要小于1500
8.9.3. 設置字符集
根據客戶要求設置字符集。
這里選擇簡體中文
點擊next
8.10. 不運行腳本和向EM 注冊
8.11. 設置用戶初始口令
安裝階段,這里統一設置為oracle
后期客戶執行修改更新
8.12. 不生成模板和建庫語句
點擊 Customize Storage Location
8.13. 定制數據文件和聯機日志
聯機日志默認大小200M 每個實例兩組。
調整為 每實例不少于3組,成員不小于512M
注意:每個文件修改要,要點擊apply 按鈕
點擊OK,點擊next。
8.14. 建庫前檢查
8.15. 可忽略項目
8.16. 安裝信息匯總
如需修改回退,否則點擊finish將開始安裝
8.17. 進行建庫安裝
比較耗時,耐心等待完成。
8.18. 安裝完成集群狀態
Ru 補丁已經安裝。

浙公網安備 33010602011771號