** Myself
Fail over Standby Database to Primary Database
Standby DB information : hostname=hpstb01, ip=10.2.144.65
- oracle sid = EEDB
มีขั้นตอนดังนี้
Check open read only mode at Standby Database
Standby DB information : hostname=hpstb01, ip=10.2.144.65
- oracle sid = EEDB
มีขั้นตอนดังนี้
Check open read only mode at Standby Database
oracle sid = EEDB
DC DB information :
- hostname=ktbtfs03 or ktbtfs04, vip=10.1.221.135, Replication ip of ktbtfs04=10.1.145.66
- listener for receive log= EEDB_DRC port 1522 , Replication ip =10.2.145.65
DRC DB information :
- hostname=hpstb01, ip=10.2.144.65
- listener = LISTENER port 1521
มีขั้นตอนดังนี้
Fail over Standby Database to Primary Database
Standby DB information : hostname=hpstb01, ip=10.2.144.65
- oracle sid = EEDB
มีขั้นตอนดังนี้
1. หยุดทำการรับ archivelog files ของ oracle ฝั่ง standby (ทำฝั่ง standby ) | Sql >ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH; -or- Sql >ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH SCRIPT STANDBY LOGFILE; |
2. เปลี่ยน standby mode ไปเป็น normal mode จากนั้นระบบจะทำให้ controlfile เป็นแบบ ปกติแล้ว (ทำฝั่ง standby ) | Sql > ALTER DATABASE ACTIVATE STANDBY DATABASE; |
3. start ระบบฝั่ง drc (ทำฝั่ง standby ) | Sql > shutdown immediate Sql > startup |
Check open read only mode at Standby Database | ||
วัตถุประสงค์ | : | ทำการตรวจสอบว่า standby database สามารถใช้งานได้ โดยผ่าน command unix |
Program | : | Shell Programming |
Standby DB information : hostname=hpstb01, ip=10.2.144.65
- oracle sid = EEDB
มีขั้นตอนดังนี้
1. หยุดทำการรับ archivelog files ของ oracle ฝั่ง standby (ทำฝั่ง standby ) | sql > alter database recover managed standby database finish; |
2. ทำการเปิด standby database ใน read only mode ซึ่ง สามารถใช้ในการ query ได้ แต่ไม่สามารถ insert,update,.. (ทำฝั่ง standby ) | sql > alter database open read only; |
3. หยุดทำการเปิด db ใน read only mode และทำการเปิดรับ archivelogs เหมือนเดิม (ทำฝั่ง standby ) | Sql > shutdown immediate Sql > startup nomount Sql > alter database mount standby database; |
Switch over Standby Database to Primary Database and Primary Database to Standby Database | ||
วัตถุประสงค์ | : | ทำการตรวจเปลี่ยนจาก standby database เป็น primary database และ จาก primary database เป็น standby databaseได้ โดยผ่าน command unix |
Program | : | Shell Programming |
oracle sid = EEDB
DC DB information :
- hostname=ktbtfs03 or ktbtfs04, vip=10.1.221.135, Replication ip of ktbtfs04=10.1.145.66
- listener for receive log= EEDB_DRC port 1522 , Replication ip =10.2.145.65
DRC DB information :
- hostname=hpstb01, ip=10.2.144.65
- listener = LISTENER port 1521
มีขั้นตอนดังนี้
1. ทำการ convert primary database to standby database (ทำฝั่ง DC ) | sql > alter database commit to switchover to standby; Sql > shutdown immediate |
2. ทำการ copy standby profile standby database to primary database และ prepare (ทำฝั่ง DRC ) | rcp/scp/ftp by oracle user ${ORACLE_HOME}/dbs/spfileEEDB.ora(DR Site) to ${ORACLE_HOME}/dbs/spfileEEDB_DR.ora(DC Site) mv ${ORACLE_HOME}/dbs/spfileEEDB.ora ${ORACLE_HOME}/dbs/spfileEEDB_origDC.ora (DC Site) mv ${ORACLE_HOME}/dbs/spfileEEDB_DR.ora ${ORACLE_HOME}/dbs/spfileEEDB.ora (DC Site) |
3. start ระบบ ฝั่ง Old Primaryไปเป็น Standby database (ทำฝั่ง DC) | Sql> startup nomount Sql> alter database mount standby database; Sql > alter database recover managed standby database DISCONNECT from session; |
4. ทำการ convert standby database to primary database (ทำฝั่ง DRC ) | sql > alter database commit to switchover to primary; Sql > shutdown immediate |
5. ทำการ copy primary profile database to Standby database และ prepare (ทำฝั่ง DC ) | rcp/scp/ftp by oracle user ${ORACLE_HOME}/dbs/spfileEEDB_origDC.ora(DC Site) to ${ORACLE_HOME}/dbs/spfileEEDB_DC.ora(DC Site) mv ${ORACLE_HOME}/dbs/spfileEEDB.ora ${ORACLE_HOME}/dbs/spfileEEDB_origDRC.ora (DC Site) mv ${ORACLE_HOME}/dbs/spfileEEDB_DR.ora ${ORACLE_HOME}/dbs/spfileEEDB.ora (DC Site) |
6. start ระบบ ฝั่ง Old Standby ไปเป็น primary database (ทำฝั่ง DRC) | Sql> startup |
7. เพิ่ม listener.ora ฝั่ง DC (old primary) ซื่ง instance EEDB จะเป็นvirtual ip ของฝั่ง old primary กับ port 1521 เพื่อเป็น standby database (ทำฝั่ง DC ) | #backup orig cp -p ${ORACLE_HOME}/network/admin/listener.ora ${ORACLE_HOME}/network/admin/listener_orig.ora # Add record EEDB_DRC = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.145.66)(PORT = 1522)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = EEDB) ) ) |
8. start listener ฝั่ง DC เพื่อรับ archive log from DRC (ทำฝั่ง DC ) | lsnrctl start EEDB_DRC |
9. แก้ tnsnames.ora primary and standby เหมือนกัน คือ EEDB จะเป็น virtual ip ของฝั่ง DRC กับ port 1521 ส่วน EEDB_DRC จะเป็น Replicate ip ของฝั่ง DC กับ port 1522 (ทำ 2 ฝั่ง) | #backup orig (all site) cp -p ${ORACLE_HOME}/network/admin/tnsnames.ora ${ORACLE_HOME}/network/admin/tnsnames_orig.ora EEDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.221.137)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = EEDB) ) ) EEDB_DRC = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.145.66)(PORT = 1522)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = EEDB) ) ) |
0 comments:
Post a Comment