主机名/vip9 | 操作系统版本 | 用户名 | 密码 | 服务IP地址 |
---|---|---|---|---|
shucairac01 | oracle linux 7.9 | root | oracle | 192.168.225.7/24 |
shucairac01-vip | oracle | oracle | 192.168.225.9/24 | |
sc-scan | grid | oracle | 192.168.225.11/24 | |
shucairac01 | oracle linux 7.9 | root | oracle | 192.168.225.8/24 |
shucairac01-vip | oracle | oracle | 192.168.225.10/24 | |
sc-scan | grid | oracle | 192.168.225.11/24 |
#2.1配置主机名与IP地址
# 节点1
hostnamectl set-hostname shucairac01 && bash
nmcli connection add con-name ens1f0 type ethernet ifname ens1f0 ipv4.address 192.168.225.7/24 ipv4.method manual autoconnect yes
nmcli connection add con-name ens1f1 type ethernet ifname ens1f1 ipv4.address 192.168.100.201/24 ipv4.method manual autoconnect yes
nmcli connection add con-name ens1f2 type ethernet ifname ens1f2 ipv4.address 192.168.200.201/24 ipv4.method manual autoconnect yes
# 节点2
hostnamectl set-hostname shucairac02 && bash
nmcli connection add con-name ens1f0 type ethernet ifname ens1f0 ipv4.address 192.168.225.8/24 ipv4.method manual autoconnect yes
nmcli connection add con-name ens1f1 type ethernet ifname ens1f1 ipv4.address 192.168.100.202/24 ipv4.method manual autoconnect yes
nmcli connection add con-name ens1f2 type ethernet ifname ens1f2 ipv4.address 192.168.200.202/24 ipv4.method manual autoconnect yes
# 节点1/2
cat <<EOF>> /etc/hosts
192.168.225.7 shucairac01
192.168.225.8 shucairac02
192.168.225.9 shucairac01-vip
192.168.225.10 shucairac02-vip
192.168.225.11 sc-scan
192.168.225.12 ora-adg
192.168.100.201 shucairac01-pri1
192.168.100.202 shucairac02-pri1
192.168.200.201 shucairac01-pri2
192.168.200.202 shucairac02-pri2
EOF
# 2.2 节点1/2,关闭系统防火墙与selinux
systemctl disable firewalld --now
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
# 2.3 安装依赖包
# 配置本地yum源
mount /soft/OracleLinux-R7-U9-Server-x86_64-dvd.iso /media/ & >/dev/null
rm -rf /etc/yum.repos.d/*
cat <<EOF>> /etc/yum.repos.d/base.repo
[baseos]
name=baseos
baseurl=file:///media/
enable = 1
gpgcheck= 0
EOF
yum clean all && yum makecache && clear
yum install tigervnc-server.x86_64 -y
yum install -y bc \
binutils \
compat-libcap1 \
compat-libstdc++-33 \
gcc \
gcc-c++ \
elfutils-libelf \
elfutils-libelf-devel \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libxcb \
libX11 \
libXau \
libXi \
libXtst \
libXrender \
libXrender-devel \
make \
net-tools \
nfs-utils \
smartmontools \
sysstat \
e2fsprogs \
e2fsprogs-libs \
fontconfig-devel \
expect \
unzip \
openssh-clients \
readline* \
tigervnc* \
psmisc --skip-broken
# 1.关闭内存大页
sed -i 's/quiet/quiet transparent_hugepage=never numa=off/' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
cat /sys/kernel/mm/transparent_hugepage/enabled
cat /proc/cmdline
cat <<EOF>>/etc/sysconfig/network
NOZEROCONF=yes
EOF
# 2 调整内核参数
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
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
net.ipv4.conf.ens1f0.rp_filter = 1
net.ipv4.conf.ens161.rp_filter = 2
net.ipv4.conf.ens193.rp_filter = 2
net.ipv6.conf.all.disable_ipv6 = 1
EOF
sysctl -p
# 内存限制
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
cat <<EOF>>/etc/pam.d/login
session required pam_limits.so
session required /lib64/security/pam_limits.so
EOF
## 多路径配置
/usr/lib/udev/scsi_id -g -u /dev/sda
4cat /etc/multipath.conf
devices {
device {
vendor "LENOVO"
product "DE_Series"
product_blacklist "Universal Xport"
path_grouping_policy "group_by_prio"
path_checker "rdac"
features "2 pg_init_retries 50"
hardware_handler "1 rdac"
prio "rdac"
failback immediate
rr_weight "uniform"
no_path_retry 30
retain_attached_hw_handler yes
detect_prio yes
}
}
multipaths {
multipath {
wwid 36d039ea0005663f6000000a865463f86
alias ocr1
}
multipath {
wwid 36d039ea0005677390000007565463f82
alias ocr2
}
multipath {
wwid 36d039ea0005663f6000000a965463f88
alias ocr3
}主库
multipath {
wwid 36d039ea0005677390000007965463ff1
alias data1
}
multipath {
wwid 36d039ea0005663f6000000ad65463ff7
alias data2
}
multipath {
wwid 36d039ea0005677390000007a65463ff3
alias data3
}
multipath {
wwid 36d039ea0005663f6000000ae65463ff9
alias data4
}
multipath {
wwid 36d039ea0005677390000007665463feb
alias data5
}
multipath {
wwid 36d039ea0005663f6000000aa65463ff2
alias data6
}
multipath {
wwid 36d039ea0005677390000007765463fed
alias data7
}
multipath {
wwid 36d039ea0005663f6000000ab65463ff3
alias data8
}
multipath {
wwid 36d039ea0005677390000007865463fef
alias arc01
}
multipath {
wwid 36d039ea0005663f6000000ac65463ff5
alias arc02
}
}
blacklist {
wwid 3600062b215db09402cd377b067737790 # 替换/usr/lib/udev/scsi_id -g -u /dev/sda的值
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
}sql
# 启动多路径服务
systemctl enable multipathd.service --now
multipath -F
multipath -v2
# 节点1 磁盘格式化
parted /dev/mapper/ocr1 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/ocr2 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/ocr3 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data1 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data2 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data3 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data4 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data5 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data6 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data7 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/data8 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/arch01 mklabel gpt mkpart primary "1 -1"
parted /dev/mapper/arch02 mklabel gpt mkpart primary "1 -1"
partprobe
# 节点2 刷新分区表
partprobe
# 节点1 /2 初始化oracleasm信息
# configure asm disk
yum install kmod-oracleasm.x86_64 -y
yum install oracleasm-support.x86_64 -y
[root@db01 ~]# oracleasm init
[root@db01 ~]# oracleasm configure -i主库
Default user to own the driver interface []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done
# 节点1 创建asm磁盘
oracleasm createdisk asmdisk1 /dev/mapper/ocr1 p1
oracleasm createdisk asmdisk2/dev/mapper/ocr2 p1
oracleasm createdisk asmdisk3 /dev/mapper/ocr3 p1
oracleasm createdisk asmdisk4 /dev/mapper/data1 p1
oracleasm createdisk asmdisk5 /dev/mapper/data2 p1
oracleasm createdisk asmdisk6 /dev/mapper/data3 p1
oracleasm createdisk asmdisk7 /dev/mapper/data4 p1
oracleasm createdisk asmdisk8 /dev/mapper/data5 p1
oracleasm createdisk asmdisk9 /dev/mapper/data6 p1
oracleasm createdisk asmdisk10 /dev/mapper/data7 p1
oracleasm createdisk asmdisk11 /dev/mapper/data8 p1
oracleasm createdisk asmdisk12 /dev/mapper/arch01p1
oracleasm createdisk asmdisk13 /dev/mapper/arch02p1
# 节点2 查看信息
oracleasm scandisks
oracleasm listdisks
# 软件包位置
[root@shucairac01 soft]# tree -R ./
./主库
|-- Linux
| |-- p35319490_190000_Linux-x86-64.zip
| |-- p35320081_190000_Linux-x86-64.zip
| |-- p35354406_190000_Linux-x86-64.zip
| |-- p6880880_190000_Linux-x86-64.zip
| `-- PatchSearch.xml
|-- LINUX.X64_193000_db_home.zip
|-- LINUX.X64_193000_grid_home.zip
`-- OracleLinux-R7-U9-Server-x86_64-dvd.iso
# 解压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/"
su - grid -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/19.3.0/grid"
# 解压DB软件包
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/"
su - oracle -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/oracle/product/19.3.0/db"
# 解压grid补订包
cd /soft/Linux/ && unzip p35319490_190000_Linux-x86-64.zip
chown grid:oinstall 35319490 -R
# 安装cvuqdisk-1.0.10-1.rpm 包
rpm -ivh /u01/app/19.3.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
##传输到节点二安装
scp cvuqdisk-1.0.10-1.rpm p19c02:/soft
rpm -ivh /soft/cvuqdisk-1.0.10-1.rpm
su - grid
vncserver :2
在 vnc 客户端界面输入 shucairac01_ip:2,输入刚才输入的密码即可连接:
添加两个节点的互信
输入 grid 用户密码,创建用户时两节点必须保持一致。先执行 setup,再执行 test,开始互信:
/home/zhangzhen/桌面/天能数据库安装/数采oracle RAC + ADG.assets确保对应网卡和IP网段对应即可,19C 心跳网段需要选 ASM & Private,用于 ASM 实例的托管:
安装预检查,由于我们只配了一个SCAN,所以关于 DNS 相关的都无视,继续:
两个节点执行以上脚本
两节点顺序执行 root.sh,先节点一执行完,再节点二执行:
两个节点的 root.sh 都执行完之后,继续安装:
检查集群状态:
与安装grid类似,打开vncserver :3
输入 oracle 用户密码,先执行 setup,再执行 test,开始互信:
安装预检查,由于我们只配了一个 SCAN,所以关于 DNS 相关的都无视,继续:
root 用户下,两个节点顺序执行 root.sh:
[root@shucairac01 Linux]# /u01/app/oracle/product/19.3.0/db/OPatch/opatchauto apply ./35320081/ -oh /u01/app/oracle/product/19.3.0/db
[root@shucairac01 Linux]# /u01/app/oracle/product/19.3.0/db/OPatch/opatchauto apply ./35354406/ -oh /u01/app/oracle/product/19.3.0/db
[oracle@shucairac01:/home/oracle]$ opatch lspatches
35354406;OJVM RELEASE UPDATE: 19.20.0.0.230718 (35354406)
35320149;OCW RELEASE UPDATE 19.20.0.0.0 (35320149)
35320081;Database Release Update : 19.20.0.0.230718 (35320081)
OPatch succeeded.
这里建库还是在第四步安装 Oracle 软件的 vnc 界面中继续:dbca
安装预检查,DNS 相关忽略:
# 登录到数据库
su - oracle
sqlplus / as sysdba;
# 备份spfile文件
create pfile='/home/oracle/pfile.ora' from spfile;
# 执行下面sql
alter system set session_cached_cursors=2000 scope=spfile;
alter system set undo_retention=5400 scope=spfile;
alter system set processes=3000 scope=spfile;
alter system set sessions=4500 scope=spfile;
alter system set cursor_sharing=force;
alter system set archive_lag_target=1800;
alter system set memory_max_target=0 scope=spfile;
alter system set memory_target=0 scope=spfile;
alter system set sga_max_size= 287G scope=spfile; (物理机的内存*0.7*0.8)
alter system set sga_target= 287G scope=spfile; (物理机的内存*0.7*0.8)
alter system set pga_aggregate_limit=0 scope=spfile;
alter system set pga_aggregate_target=16G scope=spfile;
alter system set audit_trail=none scope=spfile;
alter system set parallel_force_local=True scope=spfile;
8.集群管理
################## grid 资源管理
# 查看集群资源
crsctl stat res -t
# 关闭某个资源
crsctl stop res_nane
# 启动某个资源
crsctl start res_nane
# 关闭集群 (以root身份执行)
/u01/app/19.3.0/grid/bin/crsctl stop cluster -all
# 启动集群 (以root身份执行)
/u01/app/19.3.0/grid/bin/crsctl start cluster -all
################## Oracle 资源管理
# 数据库管理
su - oracle
# 查看数据库的状态
srvctl status database -d shucai
# 关闭数据库
srvctl status database -d shucai
# 启动数据库
srvctl start database -d shucai
注意:19C ADG可以通过 borker来配置,可以省略复杂的参数配置,本文以borker配置ADG。
[grid@shucairac01:/home/grid]$ cat /u01/app/19.3.0/grid/network/admin/listener.ora # listener.ora Network Configuration File: /u01/app/19.3.0/grid/network/admin/listener.ora # Generated by Oracle configuration tools. ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1 = ON SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = shucai_rw) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = shucai1) ) (SID_DESC = (GLOBAL_DBNAME = shucai_DGMGR) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = shucai1) ) ) VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1 = OFF VALID_NODE_CHECKING_REGISTRATION_ASMNET2LSNR_ASM = SUBNET VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM = SUBNET ASMNET2LSNR_ASM = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = ASMNET2LSNR_ASM)) ) ASMNET1LSNR_ASM = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = ASMNET1LSNR_ASM)) ) VALID_NODE_CHECKING_REGISTRATION_LISTENER = SUBNET LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER)) ) ADR_BASE_LISTENER = /u01/app/grid ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET2LSNR_ASM = ON ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM = ON ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER = ON ADR_BASE_ASMNET2LSNR_ASM = /u01/app/grid ADR_BASE_ASMNET1LSNR_ASM = /u01/app/grid LISTENER_SCAN1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER_SCAN1)) ) ADR_BASE_LISTENER_SCAN1 = /u01/app/grid
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = mon_ro) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = mon) ) (SID_DESC = (GLOBAL_DBNAME = mondg_DGMGRL) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = mon) ) (SID_DESC = (GLOBAL_DBNAME = shucai_ro) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = shucai) ) (SID_DESC = (GLOBAL_DBNAME = shucaidg_DGMGRL) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db) (SID_NAME = shucai) ) ) LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora-adg)(PORT = 1521)) ) ADR_BASE_LISTENER = /u01/app/oracle
SHUCAI_RW = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.9)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.10)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = shucai_rw) ) ) SHUCAI_RO = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.12)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = shucai_ro) ) ) MON_RW = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.3)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.4)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = mon_rw) ) ) MON_RO = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.225.12)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = mon_ro) ) )
# 主库 asmcmd cp +DATADG/SHUCAI/PASSWORD/pwdshucai.282.1093287491 /tmp/orapwshucai su - oracle scp /tmp/orapwshucai oracle@ora-adg:$ORACLE_HOME/dbs/ # 测试登录 sqlplus sys/oracle@shucai_rw as sysdba; sqlplus sys/oracle@shucai_ro as sysdba;
alter database force logging; alter system set log_archive_dest_1='LOCATION=+ARCDG' scope=both; alter system set "_disk_sector_size_override"=TRUE scope=both; alter system set log_archive_config='DG_CONFIG=(shucai,shucaidg)'; alter system set db_unique_name='shucai' scope=spfile; alter system set standby_file_management='AUTO'; alter system set db_file_name_convert='/oradata/shucai','+DATADG' scope=spfile; alter system set log_file_name_convert='/oradata/shucai','+DATADG' scope=spfile; alter system set fal_server='shucai_ro' scope=both; select * from v$dataguard_config; ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 11 size 200M; ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 12 size 200M; ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 13 size 200M; ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 GROUP 14 size 200M; ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 GROUP 15 size 200M; ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 GROUP 16 size 200M; create pfile='/home/oracle/pfile.bak' from spfile;
cat $ORACLE_HOME/dbs/initshucai.ora *._disk_sector_size_override=TRUE *.archive_lag_target=1800 *.audit_file_dest='/u01/app/oracle/admin/shucaidg/adump' *.audit_trail='NONE' *.cluster_database=false *.compatible='19.0.0' *.control_files='/oradata/shucai/controlfile/control01.ctl' *.cursor_sharing='FORCE' *.db_block_size=8192 *.db_file_name_convert='+DATADG','/oradata/shucai' *.log_file_name_convert='+DATADG','/oradata/shucai' *.db_name='shucai' *.db_unique_name='shucaidg' *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=shucaiXDB)' family:dw_helper.instance_mode='read-only' *.local_listener='-oraagent-dummy-' *.log_archive_config='DG_CONFIG=(shucai,shucaidg)' *.log_archive_dest_1='LOCATION=/arch/shucai/' *.memory_max_target=0 *.memory_target=0 *.nls_language='AMERICAN' *.nls_territory='AMERICA' *.open_cursors=300 *.parallel_force_local=TRUE *.pga_aggregate_limit=0 *.pga_aggregate_target=16G *.processes=3000 *.remote_login_passwordfile='exclusive' *.session_cached_cursors=2000 *.sessions=4500 *.sga_max_size=128G *.sga_target=128G *.standby_file_management='AUTO' *.undo_retention=5400 *.undo_tablespace='UNDOTBS1' # 创建一个数采的spfile文件 export ORACLE_SID=shucai sqlplus / as sysdba; create spfile from pfile="$ORACLE_HOME/dbs/initshucai.ora" startup nomount;
# 备库创建对应的目录 mkdir -p /u01/app/oracle/admin/shucaidg/adump mkdir -p /oradata/shucai/controlfile/ mkdir -p /oradata/shucai/shucai/onlinelog/ # 克隆一个备库 rman target sys/oracle@shucai_rw auxiliary sys/oracle@shucai_ro duplicate target database for standby from active database dorecover nofilenamecheck; # 打开broker asmcmd mkdir DATADG/SHUCAI/BROKER/ asmcmd mkdir ARCDG/SHUCAI/BROKER/ ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1 = '+DATADG/SHUCAI/BROKER/DR1.DAT' SCOPE=BOTH; ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2 = '+ARCDG/SHUCAI/BROKER/DR2.DAT' SCOPE=BOTH; alter system set dg_broker_start=true; mkdir -p /oradata/shucai/BROKER mkdir -p /arch/shucai/BROKER ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1 = '/oradata/shucai/BROKER/DR1.DAT' SCOPE=BOTH; ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2 = '/arch/shucai/BROKERDR2.DAT' SCOPE=BOTH; alter system set dg_broker_start=true;
# 添加主库与备库 dgmgrl sys/oracle@shucai_rw # 添加主库(database is : 是数据库的unique_name, connect identifieris : 是数据库的tnsname) CREATE CONFIGURATION shucai_config AS PRIMARY DATABASE IS shucai CONNECT IDENTIFIER IS shucai_rw; # 添加备库 ADD DATABASE shucaidg AS CONNECT IDENTIFIER IS shucai_ro MAINTAINED AS PHYSICAL; # 激活配置 ENABLE CONFIGURATION; # 查看配置 SHOW CONFIGURATION ; Configuration - shucai_config ## 配置名称 Protection Mode: MaxPerformance ## 数据库ADG保护模式 Members: shucai - Primary database ## 数据库当前的角色为主库 shucaidg - Physical standby database ## 数据库当前的角色备库 Fast-Start Failover: Disabled # observer的配置(需要一个仲裁节点,生产不建议使用) Configuration Status: SUCCESS (status updated 51 seconds ago # 查看切换帮忙命令 help SWITCHOVER; SWITCHOVER TO <standby database name> [WAIT [<timeout in seconds>]]; # 切换测试(主备切换,把数据库换到备库) SWITCHOVER TO shucaidg
################## grid 资源管理 # 查看集群资源 crsctl stat res -t # 关闭某个资源 crsctl stop res_nane # 启动某个资源 crsctl start res_nane # 关闭集群 (以root身份执行) /u01/app/19.3.0/grid/bin/crsctl stop cluster -all # 启动集群 (以root身份执行) /u01/app/19.3.0/grid/bin/crsctl start cluster -all ################## Oracle 资源管理 # 数据库管理 su - oracle # 查看数据库的状态 srvctl status database -d mom # 关闭数据库 srvctl status database -d mom # 启动数据库 srvctl start database -d mom
# 在数据库节点1创建一个t1表插入一条数据 su - oracle sas create table t1(id int,name varchar2(20)); insert into t1 values(100,'test1'); commit; alter system switch logfile; / # 在数据库节点2查看你的创建信息 su - oracle sas # 查看是否能查看到t1查的信息 select * from t1; create table t1(id int,name varchar2(20)); insert into t1 values(200,'test2'); commit; # 查看节点二是否能查看到t1查的信息,以及新插入的数据 select * from t1; alter system switch logfile; / # 执行您要发测试(RAC/ADG),ADG 切换测试与上步骤一样 su - oracle sas create table t1(id int,name varchar2(20)); insert into t1 values(300,'test3'); commit; alter system switch logfile;
点击加载更多