DB2: To test failover
If ACR turned off on the application, then the application will not follow the database:
To switch to 602 from 601 , so On 602
/usr/opt/app/db2/admin/tst3ins3/tsa_tests/takeoverHADR.sh failover command switchover command
[tst3ins3@dev602 tsa_tests]
$ ls -lrt
total 8
-rwxr--r-- 1 tst3ins3 db2iadm1 528 Oct 28 14:13 crashDB.sh
-rwxr--r-- 1 tst3ins3 db2iadm1 134 Oct 28 14:14 takeoverHADR.sh
[tst3ins3@dev602 tsa_tests]
$ ./takeoverHADR.sh wctst3
2021-12-15-14.38.30.512458
DB20000I The TAKEOVER HADR ON DATABASE command completed successfully.
real 0m16.12s
user 0m0.01s
sys 0m0.01s
---
ON 601 to switch back:
$ ls -lrt
total 8
-rwxr--r-- 1 tst3ins3 db2iadm1 528 Oct 28 14:13 crashDB.sh
-rwxr--r-- 1 tst3ins3 db2iadm1 134 Oct 28 14:14 takeoverHADR.sh
[tst3ins3@dev601 tsa_tests]
$ ./takeoverHADR.sh wctst3
2021-12-15-14.40.35.785159
DB20000I The TAKEOVER HADR ON DATABASE command completed successfully.
real 0m15.55s
user 0m0.01s
sys 0m0.01s
[tst3ins3@dev601 tsa_tests]
NOTE:
Ensure alternate server hostname and port is set:
[tst4ins4@db2tst602 ~]
$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = WCTST10
Database name = WCTST10
Local database directory = /rd100/db2data
Database release level = 15.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
[tst4ins4@db2tst602 ~]
$ db2 update alternate server for database wctst10 using hostname db2tst601.gcp.tmw.com port 25010
DB20000I The UPDATE ALTERNATE SERVER FOR DATABASE command completed
successfully.
DB21056W Directory changes may not be effective until the directory cache is
refreshed.
[tst4ins4@db2tst602 ~]
$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = WCTST10
Database name = WCTST10
Local database directory = /rd100/db2data
Database release level = 15.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname = db2tst601.gcp.tmw.com
Alternate server port number = 25010
[tst4ins4@db2tst602 ~]
Ad of today Nov 18th 2025, following are the ports for non-prod:
25010 db2tst601.gcp.tmw.com
50011 db2tst602.gcp.tmw.com
$ db2 get dbm cfg | grep -i svce
TCP/IP Service name (SVCENAME) = db2c_tst3ins3
SSL service name (SSL_SVCENAME) =
[tst3ins3@db2tst601 ~]
$ cat /etc/services | grep -i db2c_tst3ins3
db2c_tst3ins3 25010/tcp
On db2prd602 is standby taking over 603:
in dbdump directory
db2haicu -o new_haicu_settings_20211025.xml
db2 takeover hadr on db wcprd1 <-- manual takeover
lssam -top <-- to see the log
Kill -9 the db2sysc process to pull the rug out from under the db
This is how prd1ins1 is setup:
db2prd601:
$ cd TSA_tests
[prd1ins1@db2prd601 TSA_tests]
$ ls -lrt
total 8
-rwxr--r--. 1 prd1ins1 db2iadm1 529 Nov 7 2021 crashDB.sh
-rwxr--r--. 1 prd1ins1 db2iadm1 127 Nov 7 2021 takeoverDB.sh
[prd1ins1@db2prd601 TSA_tests]
$ pwd
/usr/opt/app/db2/admin/prd1ins1/TSA_tests
[prd1ins1@db2prd601 TSA_tests]
$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = WCPRD1
Database name = WCPRD1
Local database directory = /rd100/db2data
Database release level = 15.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname = db2prd602.gcp.tmw.com
Alternate server port number = 50000
[prd1ins1@db2prd601 TSA_tests]
$ db2 get db cfg for wcprd1 | grep HADR
HADR database role = PRIMARY
HADR local host name (HADR_LOCAL_HOST) = db2prd601
HADR local service name (HADR_LOCAL_SVC) = 60000
HADR remote host name (HADR_REMOTE_HOST) = db2prd602
HADR remote service name (HADR_REMOTE_SVC) = 60000
HADR instance name of remote server (HADR_REMOTE_INST) = prd1ins1
HADR timeout value (HADR_TIMEOUT) = 20
HADR target list (HADR_TARGET_LIST) = db2prd602:60000|db2prd603:60000
HADR log write synchronization mode (HADR_SYNCMODE) = NEARSYNC
HADR spool log data limit (4KB) (HADR_SPOOL_LIMIT) = AUTOMATIC(12375000)
HADR log replay delay (seconds) (HADR_REPLAY_DELAY) = 0
HADR peer window duration (seconds) (HADR_PEER_WINDOW) = 300
HADR SSL certificate label (HADR_SSL_LABEL) =
HADR SSL Hostname Validation (HADR_SSL_HOST_VAL) = OFF
[prd1ins1@db2prd601 TSA_tests]
$
db2prd602:
[prd1ins1@db2prd602 ~]
$ db2 list db directory
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = WCPRD1
Database name = WCPRD1
Local database directory = /rd100/db2data
Database release level = 15.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname = db2prd601.gcp.tmw.com
Alternate server port number = 50000
[prd1ins1@db2prd602 ~]
$ db2 get db cfg for wcprd1 | grep HADR
HADR database role = STANDBY
HADR local host name (HADR_LOCAL_HOST) = db2prd602
HADR local service name (HADR_LOCAL_SVC) = 60000
HADR remote host name (HADR_REMOTE_HOST) = db2prd601
HADR remote service name (HADR_REMOTE_SVC) = 60000
HADR instance name of remote server (HADR_REMOTE_INST) = prd1ins1
HADR timeout value (HADR_TIMEOUT) = 20
HADR target list (HADR_TARGET_LIST) = db2prd601:60000|db2prd603:60000
HADR log write synchronization mode (HADR_SYNCMODE) = NEARSYNC
HADR spool log data limit (4KB) (HADR_SPOOL_LIMIT) = AUTOMATIC(12375000)
HADR log replay delay (seconds) (HADR_REPLAY_DELAY) = 0
HADR peer window duration (seconds) (HADR_PEER_WINDOW) = 300
HADR SSL certificate label (HADR_SSL_LABEL) =
HADR SSL Hostname Validation (HADR_SSL_HOST_VAL) = OFF
[prd1ins1@db2prd602 ~]
$ cd /usr/opt/app/db2/admin/prd1ins1/TSA_tests
[prd1ins1@db2prd602 TSA_tests]
$
db2prd603:
[prd1ins1@db2prd603 ~]
$ db2 list db directory
System Database Directory
Number of entries in the directory = 2
Database 1 entry:
Database alias = WCTST3
Database name = WCTST3
Node name = TST3
Database release level = 15.00
Comment =
Directory entry type = Remote
Catalog database partition number = -1
Alternate server hostname =
Alternate server port number =
Database 2 entry:
Database alias = WCPRD1
Database name = WCPRD1
Local database directory = /rd100/db2data
Database release level = 15.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
[prd1ins1@db2prd603 ~]
$ db2 get db cfg for wcprd1 | grep HADR
HADR database role = STANDBY
HADR local host name (HADR_LOCAL_HOST) = db2prd603
HADR local service name (HADR_LOCAL_SVC) = 60000
HADR remote host name (HADR_REMOTE_HOST) = db2prd601
HADR remote service name (HADR_REMOTE_SVC) = 60000
HADR instance name of remote server (HADR_REMOTE_INST) = prd1ins1
HADR timeout value (HADR_TIMEOUT) = 20
HADR target list (HADR_TARGET_LIST) = db2prd602:60000|db2prd601:60000
HADR log write synchronization mode (HADR_SYNCMODE) = NEARSYNC
HADR spool log data limit (4KB) (HADR_SPOOL_LIMIT) = AUTOMATIC(12375000)
HADR log replay delay (seconds) (HADR_REPLAY_DELAY) = 0
HADR peer window duration (seconds) (HADR_PEER_WINDOW) = 300
HADR SSL certificate label (HADR_SSL_LABEL) =
HADR SSL Hostname Validation (HADR_SSL_HOST_VAL) = OFF
[prd1ins1@db2prd603 ~]
$
Comments
Post a Comment