2 node RAC dataguard configuration
All steps will be carried out on one of the node (Prod1) and later we will clone to other nodes or machines:
Install the system Linux prerequisites:
The package oracle-database-preinstall-19c contains all the prerequisites on Oracle Linux using the Oracle Unbreakable Enterprise Kernel (UEK).
yum install -y oracle-database-preinstall-19c
yum install -y oracleasm-support
sysctl -p
crosscheck >>> cat /etc/sysctl.conf
Group Creation: –
groupadd -g 5001 oinstall
groupadd -g 5002 dba
groupadd -g 5003 oper
groupadd -g 5004 asmadmin
groupadd -g 5005 asmdba
groupadd -g 5006 asmoper
User Creation: –
useradd -u 5007 -g oinstall -G dba,oper,asmdba oracle
useradd -u 5008 -g oinstall -G asmadmin,asmdba,asmoper,dba grid
usermod -g oinstall -G dba,oper,asmdba oracle
usermod -g oinstall -G asmadmin,asmdba,asmoper,dba grid
passwd oracle
passwd grid
Add below entries in /etc/security/limits.conf file which will detine limits
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle hard memlock 134217728
oracle soft memlock 134217728
grid soft nofile 1024
grid hard nofile 65536
grid soft nproc 16384
grid hard nproc 16384
grid soft stack 10240
grid hard stack 32768
grid hard memlock 134217728
grid soft memlock 134217728
Create the directories in which the Oracle / Grid software will be installed.
mkdir -p /u01/app/grid
mkdir -p /u01/app/19c/gridhome_1
mkdir -p /u02/app/oracle
mkdir -p /u02/app/oracle/product/19c/dbhome_1
mkdir -p /u01/app/oraInventory
mkdir -p /u01/LATEST_PATCH/
chown -R grid:oinstall /u01
chown -R oracle:oinstall /u02
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01
chmod -R 775 /u02
Set bash_profile for grid and oracle user
login to grid user and set .bash_profile :
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/gridhome_1
export ORACLE_SID=+ASM1
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
login to oracle user and set .bash_profile :
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u02/app/oracle
export ORACLE_HOME=/u02/app/oracle/product/19c/dbhome_1
export ORACLE_SID=prod1
export ORACLE_TERM=xterm
export BASE_PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$BASE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
Add the following entry in /etc/hosts file and crosscheck node reachability
Primary Site:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# Private
192.168.10.1 prod1-priv.localdomain prod1-priv
192.168.10.2 prod2-priv.localdomain prod2-priv
# Public
192.168.56.71 prod1.localdomain prod1
192.168.56.72 prod2.localdomain prod2
# Virtual
192.168.56.81 prod1-vip.localdomain prod1-vip
192.168.56.82 prod2-vip.localdomain prod2-vip
# SCAN
192.168.56.91 prod-scan.localdomain prod-scan
192.168.56.92 prod-scan.localdomain prod-scan
192.168.56.93 prod-scan.localdomain prod-scan
Firewall Stop and Disable
We can open firewall after installation
systemctl stop firewalld.service
systemctl disable firewalld.service
Chrony NTP Configuration
systemctl enable chronyd.service
systemctl restart chronyd.service
chronyc -a 'burst 4/4'
chronyc -a makestep
Now we will Bring Down Node1 i.e. Prod1 and clone it to 3 more nodes i.e Prod2, STBY1, STBY2
After cloning start each node one by one and make changes i.e. modify Hostname, ORACLE_SID in bash_profile, Network file on standby side.
Use below command to change Hostnames:
nmcli general hostname
nmcli general hostname prod2.localdomain
nmcli general hostname
service systemd-hostnamed restart
nmcli general hostname
nmcli general hostname stby1.localdomain
nmcli general hostname
service systemd-hostnamed restart
nmcli general hostname
nmcli general hostname stby2.localdomain
nmcli general hostname
service systemd-hostnamed restart
Add the following entry in /etc/hosts file and crosscheck node reachability
Standby Site:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# Private
192.168.10.3 stby1-priv.localdomain stby1-priv
192.168.10.4 stby2-priv.localdomain stby2-priv
# Public
192.168.56.73 stby1.localdomain stby1
192.168.56.74 stby2.localdomain stby2
# Virtual
192.168.56.83 stby1-vip.localdomain stby-vip
192.168.56.84 stby2-vip.localdomain stby-vip
# SCAN
192.168.56.94 stby-scan.localdomain stby-scan
192.168.56.95 stby-scan.localdomain stby-scan
192.168.56.96 stby-scan.localdomain stby-scan
Create shared ASM Disk FOR OCR, DATAFILE and ARCHIVE on Both Sites: Check My Previous Video Link: https://youtu.be/yv-ldikjn9k
Add new shared disk to virtual box machines it should be sharable
Login to system and run ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb
fdisk /dev/sdb
The sequence of answers is "n", "p", "1", "Return", "Return" and "w".
Set ASM disks >>>> oracleasm configure -i
Create ASM disks >>>> oracleasm createdisk ASM1 /dev/sdb1
Scan ASM disks >>>> oracleasm scandisks
List ASM disks >>>> oracleasm listdisks
######### On Primary Site ##########
Copy software to node1 on primary site and unzip software at grid home location and rdbms home locations by login to respective users
Setup passwordless ssh configuration
cd /u01/app/19c/gridhome_1/deinstall
./sshUserSetup.sh -user grid -hosts "prod1 prod2" -noPromptPassphrase -confirm -advanced
Similarly do it for oracle user
cd /u02/app/oracle/product/19c/dbhome_1/deinstall
./sshUserSetup.sh -user oracle -hosts "prod1 prod2" -noPromptPassphrase -confirm –advanced
./sshUserSetup.sh -user root -hosts "prod1 prod2" -noPromptPassphrase -confirm –advanced
Set profile and go to ORACLE_HOME location from grid user and run following command and follow the steps.
cd $ORACLE_HOME
./gridSetup.sh -applyRU /u01/LATEST_PATCH/32545008
Once Grid Installation done, Install RDBMS Software through oracle user and create RAC database prod (check our previous video’s for more detail)
./runInstaller -applyRU /u01/LATEST_PATCH/32545008
Use DBCA to create database prod
####### On Standby Site ###########
Copy software to node1 on standby site and unzip software at grid home location and rdbms home locations by login to respective users
Setup passwordless ssh configuration
cd /u01/app/19c/gridhome_1/deinstall
./sshUserSetup.sh -user grid -hosts "stby1 stby2" -noPromptPassphrase -confirm -advanced
Similarly do it for oracle user
cd /u02/app/oracle/product/19c/dbhome_1/deinstall
./sshUserSetup.sh -user oracle -hosts "stby1 stby2" -noPromptPassphrase -confirm –advanced
./sshUserSetup.sh -user root -hosts "stby1 stby2" -noPromptPassphrase -confirm –advanced
Set profile and go to ORACLE_HOME location from grid user and run following command and follow the steps.
In this step we will be doing Grid software installation along with latest patch installation using –applyRU option.
cd $ORACLE_HOME
./gridSetup.sh -applyRU /u01/LATEST_PATCH/32545008/
Once Grid Installation done, Install RDBMS Software through oracle user and DO not create any database on standby site (check our previous video’s for more detail)
cd $ORACLE_HOME
./runInstaller -applyRU /u01/LATEST_PATCH/32545008
#####################Steps for Data Guard Configuration #####################
1)On Primary Site Below Steps will be performed:
Enable Forced Logging on Primary If it is not done already
Copy Password File from Primary site to standby site
Configure Standby Redo Log on Primary Site
Verify Archive Mode Enabled on Primary Site
Set Primary Database Initialization Parameters for Data Guard Configuration
Configure LISTENER Entries on Primary
Configure TNS Entries on Primary
2)On Standby Site Below Steps will be performed:
Set Standby Database Initialization Parameters
Create required directories on Standby
Startup nomount
Configure static LISTENER for replication purpose and Crosscheck other LISTENER Entries on Standby
Configure TNS Entries on Standby
Verify TNS connectivity
Run the duplicate command / backup based restore
Verify Standby redo logs
Create spfile
Add init parameters for Instance 2 (STBY2)
Add database to OCR
Enable MRP on Standby
Very Very Important step…!!!
Copy /etc/hosts entry from prod to standby sites and
Copy /etc/hosts entry from standby to prod sites
Verify ping command for all mentioned hosts. This will make sure all nodes are able to communicate with each others.
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# Private
192.168.10.1 prod1-priv.localdomain prod1-priv
192.168.10.2 prod2-priv.localdomain prod2-priv
# Public
192.168.56.71 prod1.localdomain prod1
192.168.56.72 prod2.localdomain prod2
# Virtual
192.168.56.81 prod1-vip.localdomain prod1-vip
192.168.56.82 prod2-vip.localdomain prod2-vip
# SCAN
192.168.56.91 prod-scan.localdomain prod-scan
192.168.56.92 prod-scan.localdomain prod-scan
192.168.56.93 prod-scan.localdomain prod-scan
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# Private
192.168.10.3 stby1-priv.localdomain stby1-priv
192.168.10.4 stby2-priv.localdomain stby2-priv
# Public
192.168.56.73 stby1.localdomain stby1
192.168.56.74 stby2.localdomain stby2
# Virtual
192.168.56.83 stby1-vip.localdomain stby-vip
192.168.56.84 stby2-vip.localdomain stby-vip
# SCAN
192.168.56.94 stby-scan.localdomain stby-scan
192.168.56.95 stby-scan.localdomain stby-scan
192.168.56.96 stby-scan.localdomain stby-scan
ping -c 2 stby1-priv
ping -c 2 stby2-priv
ping -c 2 stby1
ping -c 2 stby2
ping -c 2 stby-scan
ping -c 2 prod1-priv
ping -c 2 prod2-priv
ping -c 2 prod1
ping -c 2 prod2
ping -c 2 prod-scan
#####################Primary Site - Step 1:#####################
Enable Forced Logging on Primary:
select name, open_mode,cdb from v$database;
select force_logging from v$database;
ALTER DATABASE FORCE LOGGING; >>>>> change using this command
select force_logging from v$database; >>>>> Verify changes
#####################Primary Site - Step 2:#####################
Copy Password File from Primary to standby:
Login to grid user and go to ASMCMD prompt
Explore to password file location for primary database instance.
cd +DATA/PROD/PASSWORD
Run pwcopy pwdprod.256.1075056119 /tmp
Now login through root user and go to /tmp location and modify permission for copied password file.
chown oracle:oinstall filename
scp -p pwdprod.256.1077300479 oracle@stby1:$ORACLE_HOME/dbs/orapwstby1
scp -p pwdprod.256.1077300479 oracle@stby2:$ORACLE_HOME/dbs/orapwstby2
#####################Primary Site - Step 3 and Step 4:################
Configure Standby Redo Log on Primary:
The standby redo logs must be the same size as the primary database online logs. The recommended number of standby redo logs is: (maximum no.of logfiles per thread + 1) * maximum no. of threads.
In our case : We have two redo log file per thread and we have two thread so (2 + 1) * 2 = 6 That is, one more standby redo log file for each thread.
Note: Standby Redo logs files used only when protection mode is Maximum Availability and Maximum Protection. But will add for later usage.
Add standby redo logfiles on primary site:
select * from v$logfile order by TYPE,group#;
select b.thread#,a.group#, a.member, b.bytes FROM v$logfile a, v$standby_log b WHERE a.group# = b.group#;
select b.thread#,a.group#, a.member, b.bytes FROM v$logfile a, v$log b WHERE a.group# = b.group#;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1
GROUP 5 ('+DATA') SIZE 200M,
GROUP 6 ('+DATA') SIZE 200M,
GROUP 7 ('+DATA') SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2
GROUP 8 ('+DATA') SIZE 200M,
GROUP 9 ('+DATA') SIZE 200M,
GROUP 10 ('+DATA') SIZE 200M;
select * from v$logfile order by TYPE,group#;
select b.thread#,a.group#, a.member, b.bytes FROM v$logfile a, v$standby_log b WHERE a.group# = b.group#;
Verify Archive Mode Enabled on Primary:
Login to database and run archive log list . If archivelog mode is not enabled, enable it.
Archive log list
If not enabled
shutdown immediate
startup mount
alter system set log_archive_dest_1='LOCATION=+ARCHIVE';
alter database archivelog;
alter database open;
#####################Primary Site - Step 5:#####################
Set Primary Database Initialization Parameters
Login to database and make below parameter changes on primary db.
set echo on;
set feedback on;
create pfile='/home/oracle/initprod.ora.bkp' from spfile;
show parameter db_unique_name
ALTER system set db_unique_name='prod' scope=spfile sid='*';
show parameter db_unique_name
ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(prod,stby)' scope=both sid='*';
show parameter LOG_ARCHIVE_CONFIG
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=stby LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=stby' scope=both sid='*';
show parameter LOG_ARCHIVE_DEST_2
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=both sid='*';
show parameter LOG_ARCHIVE_DEST_STATE_1
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=both sid='*';
show parameter LOG_ARCHIVE_DEST_STATE_2
ALTER SYSTEM SET fal_client=prod scope=both sid='*';
show parameter fal_client
ALTER SYSTEM SET fal_server=stby scope=both sid='*';
show parameter fal_server
ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=30;
show parameter LOG_ARCHIVE_MAX_PROCESSES
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO scope=both sid='*';
show parameter STANDBY_FILE_MANAGEMENT
create pfile='/home/oracle/initprod.ora' from spfile;
!cat /home/oracle/initprod.ora
#####################Primary Site - Step 6:#####################
Configure LISTENER Entries on Primary:
Crosscheck listener status on Primary side on both nodes.
ps -ef | grep tns
lsnrctl status LISTENER
lsnrctl status LISTENER_SCAN1
lsnrctl status LISTENER_SCAN2
lsnrctl status LISTENER_SCAN3
cat /u01/app/19c/gridhome_1/network/admin/listener.ora
#####################Primary Site - Step 7:#####################
Configure TNS Entries on Primary
Login to oracle user and make entry in tnsnames.ora file on primary side DB servers.
PROD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod-scan)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = PROD)
)
)
STBY =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = stby1.localdomain)(PORT = 1541))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = STBY)(UR=A)
)
)
Note: We will modify STBY tns entry once our replication completes. This entry is temporary used to replication. We will do tnsping later once Standby side changes are in place.
#####################Standby Site - Step 1:#####################
Set Standby Database Initialization Parameters:
Copy Pfile from production and make required changes as per Standby Database requirements:
*.audit_file_dest='/u02/app/oracle/admin/stby/adump'
*.audit_trail='db'
*.cluster_database=false
*.compatible='19.0.0'
*.control_files='+DATA/STBY/CONTROLFILE/control01.ctl','+ARCHIVE/STBY/CONTROLFILE/control01.ctl'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_name='PROD'
*.db_recovery_file_dest='+ARCHIVE'
*.db_recovery_file_dest_size=8256m
*.db_unique_name='STBY'
*.enable_pluggable_database='TRUE'
*.diagnostic_dest='/u02/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=stbyXDB)'
*.fal_client='STBY'
*.fal_server='PROD'
stby1.instance_number=1
*.log_archive_config='DG_CONFIG=(prod,stby)'
*.log_archive_dest_1='location=+ARCHIVE'
*.log_archive_dest_2='SERVICE=prod LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=prod'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='DEFER'
*.log_archive_format='%t_%s_%r.arc'
*.log_archive_max_processes=30
*.nls_language='AMERICAN'
*.nls_territory='AMERICA'
*.open_cursors=300
*.pga_aggregate_target=465m
*.processes=300
*.remote_login_passwordfile='exclusive'
*.sga_target=1394m
*.standby_file_management='AUTO'
stby1.thread=1
stby1.undo_tablespace='UNDOTBS1'
#####################Standby Site - Step 2 and Step 3:#####################
Create required directories on Standby:
mkdir -p /u02/app/oracle/admin/stby/adump >>>> On syby1
mkdir -p /u02/app/oracle/admin/stby/adump >>>> On syby2
Make required directories in ASM DISKGROUPS as mentioned locations in pfile:
Login to grid user and create below directories
+DATA/STBY/CONTROLFILE
+ARCHIVE/STBY/CONTROLFILE
Startup database in nomount state using newly created pfile
startup nomount pfile='/u02/app/oracle/product/19c/dbhome_1/dbs/initstby1.ora';
#####################Step 4: Configure temporary static LISTENER for replication purpose in RDBMS Home#####################
Configure temporary static LISTENER for replication purpose in RDBMS Home:
su – oracle
cd $ORACLE_HOME/network/admin
vi listener.ora
SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = stby)
(ORACLE_HOME = /u02/app/oracle/product/19c/dbhome_1)
(SID_NAME = stby1)
)
)
LISTENER1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = stby1.localdomain)(PORT = 1541))
)
)
Start this listener:
lsnrctl start listener1
#####################Standby Site – Step 5#####################
Configure TNS Entries on Standby and copy this entry on both nodes.
PROD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod-scan)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = PROD)
)
)
STBY =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = stby1.localdomain)(PORT = 1541))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = STBY)(UR=A)
)
)
#####################Standby Site – Step 6#####################
Verify TNS connectivity
On Primary Site:
sqlplus sys/sys@prod as sysdba
sqlplus sys/sys@stby as sysdba
On Standby Site:
sqlplus sys/sys@prod as sysdba
sqlplus sys/sys@stby as sysdba
#####################Standby Site – Step 7#####################
Run the duplicate command:
From Standby Node 1 run below command:
>> rman target sys/sys@prod auxiliary sys/sys@stby
Execute following command in rman prompt for standby database creation:
>> duplicate target database for standby from active database nofilenamecheck;
#####################Standby Site – Step 8 and Step 9#####################
Verify Standby redo logs:
select * from v$logfile;
select b.thread#,a.group#, a.type, a.member, b.bytes FROM v$logfile a, v$standby_log b WHERE a.group# = b.group#;
select b.thread#,a.group#, a.member, b.bytes FROM v$logfile a, v$log b WHERE a.group# = b.group#;
Create Spfile from existing pfile:
create spfile='+DATA/STBY/PARAMETERFILE/spfileSTBY.ora' from pfile='/u02/app/oracle/product/19c/dbhome_1/dbs/initstby1.ora';
shut immediate;
cd $ORACLE_HOME/dbs
ls -lrt initstby1.ora
mv initstby1.ora initstby1.ora.bkp
echo "SPFILE='+DATA/STBY/PARAMETERFILE/spfileSTBY.ora'" > initstby1.ora
scp initstby1.ora oracle@stby2:/u02/app/oracle/product/19c/dbhome_1/dbs/initstby2.ora
Startup mount;
#####################Standby Site – Step 10#####################
Add init parameters for Instance 2 (STBY2)
alter system set undo_tablespace=UNDOTBS2 sid='stby2' scope=spfile;
alter system set instance_number=1 sid='stby1' scope=spfile;
alter system set instance_number=2 sid='stby2' scope=spfile;
alter system set instance_name='stby1' sid='stby1' scope=spfile;
alter system set instance_name='stby2' sid='stby2' scope=spfile;
alter system set thread=1 sid='stby1' scope=spfile;
alter system set thread=2 sid='stby2' scope=spfile;
alter system set cluster_database=TRUE scope=spfile;
alter system set remote_listener='stby-scan:1521' scope=spfile sid='*';
shut immediate;
startup mount;
select name,open_mode,database_role,cdb from v$database;
#####################Standby Site – Step 11#####################
Add database to OCR:
srvctl config database -d stby
srvctl add database -db stby -oraclehome /u02/app/oracle/product/19c/dbhome_1 -role physical_standby -startoption open -spfile +DATA/STBY/PARAMETERFILE/spfileSTBY.ora
srvctl add instance -db stby -instance stby1 -node stby1
srvctl add instance -db stby -instance stby2 -node stby2
srvctl status database -d stby -v
srvctl start database -d stby
srvctl config database -d stby
srvctl status database -d stby -v
crsctl stat res -t
#####################Standby Site – Step 12#####################
Enable MRP on Standby database:
select name,open_mode,database_role,cdb from v$database;
alter database recover managed standby database using current logfile disconnect from session;
alter database recover managed standby database cancel;
select PROCESS,STATUS,THREAD#,SEQUENCE#,BLOCK# from v$managed_standby;
alter database recover managed standby database using current logfile disconnect from session instances all;
#####################Standby Site – Last Step#####################
Verify Sync Status :
On Primary:
select thread#,max(sequence#) from v$archived_log where archived='YES' group by thread#;
On Primary Instance 1 Perform log switches 3 to 4 times.
alter system switch logfile;
On Primary Instance 2 Perform log switches 3 to 4 times.
alter system switch logfile;
select thread#,max(sequence#) from v$archived_log where archived='YES' group by thread#;
On Standby:
select thread#,max(sequence#) from v$archived_log where applied='YES' group by thread#;
##############################################
ASMCMD [+] > cd DATA
ASMCMD [+DATA] > ls
STBY/
ASMCMD [+DATA] > cd STBY
ASMCMD [+DATA/STBY] > ls
C7D6B3AA458B6C5DE0534738A8C09462/
C7D7A0B7F1624165E0534838A8C02FBB/
C7D7A41DE4F242B3E0534838A8C08FB1/
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
ASMCMD [+DATA/STBY] > mkdir PASSWORDFILE
ASMCMD [+DATA/STBY] >
ASMCMD [+DATA/STBY] > cd PASSWORDFILE
ASMCMD [+DATA/STBY/PASSWORDFILE] > pwd
+DATA/STBY/PASSWORDFILE
ASMCMD [+DATA/STBY/PASSWORDFILE] >
ASMCMD [+DATA/STBY/PASSWORDFILE] > pwcopy /u02/app/oracle/product/19c/dbhome_1/dbs/orapwstby1 +DATA/STBY/PASSWORDFILE/orapwstby
copying /u02/app/oracle/product/19c/dbhome_1/dbs/orapwstby1 -> +DATA/STBY/PASSWORDFILE/orapwstby
ASMCMD [+DATA/STBY/PASSWORDFILE] > ls
orapwstby
ASMCMD [+DATA/STBY/PASSWORDFILE] >
[oracle@stby1 dbs]$ srvctl modify database -d stby -pwfile +DATA/STBY/PASSWORDFILE/orapwstby
[oracle@stby1 dbs]$
[oracle@stby1 dbs]$
[oracle@stby1 dbs]$ srvctl config database -d stby -v
@@@@@@@@@@@@@@@tnsnames.ora@@@@@@@@@@@@@@
STBY =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = stby-scan)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = STBY)
)
)
Comments
Post a Comment