Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Oracle 11G Active DataGuard role switching

2025-02-27 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

1. Prepare before switching: 1.1 main library check: 1.1.1 FAL check

SQL > show parameter fal

NAME TYPE VALUE

-

Fal_client string

Fal_server string

SQL > alter system set fal_client='pri_1522'

SQL > alter system set fal_server='std_1522'

SQL > show parameter fal

NAME TYPE VALUE

-

Fal_client string pri_1522

Fal_server string std_1522

1.1.2 automatic management of Standby files

SQL > show parameter standby_file_management

NAME TYPE VALUE

-

Standby_file_management string MANUAL

SQL > alter system set standby_file_management='auto'

SQL > show parameter standby_file_management

NAME TYPE VALUE

-

Standby_file_management string auto

1.1.3 Convert parameter setting

Set the data file, redo log conversion directory

SQL > show parameter convert

NAME TYPE VALUE

-

Db_file_name_convert string / u01/app/oradata/testdb, / u01/

App/oradata/testdb

Log_file_name_convert string / u01/app/archivelog/testdb, / u

01/app/archivelog/testdb

1.1.4 Log_archive_dest parameters

SQL > show parameter log_archive_dest_1

NAME TYPE VALUE

-

Log_archive_dest_1 string location=/u01/app/archivelog/t

Estdb valid_for= (all_logfiles

All_roles) db_unique_name=pri_

Db

SQL > show parameter log_archive_dest_2

NAME TYPE VALUE

-

Log_archive_dest_2 string service=std_1522 lgwr sync val

Id_for= (online_logfiles,primar

Y_role) db_unique_name=std_db

1.2Depot check 1.2.1 FAL check

SQL > show parameter fal

NAME TYPE VALUE

-

Fal_client string std_1522

Fal_server string pri_1522

1.2.2 automatic management of Standby files

SQL > show parameter standby_file_management

NAME TYPE VALUE

-

Standby_file_management string auto

1.2.3 Convert parameter setting

SQL > show parameter convert

NAME TYPE VALUE

-

Db_file_name_convert string / u01/app/oradata/testdb, / u01/

App/oradata/testdb

Log_file_name_convert string / u01/app/archivelog/testdb, / u

01/app/archivelog/testdb

1.2.4 Log_archive_dest parameters

SQL > show parameter log_archive_dest_1

NAME TYPE VALUE

-

Log_archive_dest_1 string location=/u01/app/archivelog/t

Estdb valid_for= (all_logfiles

All_roles) db_unique_name=std_

Db

SQL > show parameter log_archive_dest_2

NAME TYPE VALUE

-

Log_archive_dest_2 string service=pri_1522 lgwr sync val

Id_for= (online_logfiles,primar

Y_role) db_unique_name=pri_db

1.2.5 confirm log archiving, force logging open

SQL > SELECT log_mode, force_logging, open_mode FROM v$database

LOG_MODE FOR OPEN_MODE

-

ARCHIVELOG YES READ ONLY

two。 The master database is switched to the physical backup library 2.1 check the status of the master library 2.1.1 check whether the master library has GAP before switching

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY RESOLVABLEGAP READ WRITE MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

SQL > SELECT status, gap_status, dest_id FROM v$archive_dest_status WHERE dest_id=2

STATUS GAP_STATUS DEST_ID

-

VALID RESOLVABLE GAP 2

2.1.2 with GAP, perform a log switch

SQL > alter system switch logfile

SQL > SELECT status, gap_status, dest_id FROM v$archive_dest_status WHERE dest_id=2

STATUS GAP_STATUS DEST_ID

-

VALID NO GAP 2

SQL > SELECT database_role, switchover_status, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY TOSTANDBY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

2.2 status of the repository

SQL > SELECT switchover_status, database_role, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY NOT ALLOWED READ ONLY WITH APPLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

2.3 prepare the database to cancel the application log

SQL > alter database recover managed standby database cancel

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY SWITCHOVER PENDING READ ONLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

2.4 switch from main library to physical backup library

SQL > alter database commit to switchover to physical standby with session shutdown

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

*

ERROR at line 1:

ORA-01507: database not mounted

2.5 switch from the original library to the new main library 2.5.1 View status

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY SWITCHOVER PENDING READ ONLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

2.5.2 Application logs are required for the original database (logs are generated because the original master database has been switched over)

SQL > alter database recover managed standby database disconnect

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY TO PRIMARY READ ONLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

2.5.3 switch from the original library to the new main library

SQL > alter database commit to switchover to primary

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY NOTALLOWED MOUNTED MAXIMUM PERFORMANCE UNPROTECTED

2.5.4 the new master database (original library) is set to open status:

SQL > alter database open

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY FAILED DESTINATION READ WRITE MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

At this point, the original library has been switched to the new main library, and the original main library has been switched to the new standby library and closed.

3. New repository management 3.1 start the new repository and put it in the mount state

Since the switch of the original master library has been disabled, you need to restart the instance and put it in the mount state:

SQL >! Ps-ef | grep ora_

Oracle 28136 1 011:10? 00:00:01 ora_pmon_testdb

Oracle 28138 1 011:10? 00:00:00 ora_vktm_testdb

Oracle 28142 1 011:10? 00:00:00 ora_gen0_testdb

Oracle 28144 1 011:10? 00:00:00 ora_diag_testdb

Oracle 28146 1 011:10? 00:00:00 ora_dbrm_testdb

Oracle 28148 1 011:10? 00:00:00 ora_psp0_testdb

Oracle 28150 1 011:10? 00:00:01 ora_dia0_testdb

Oracle 28152 1 011:10? 00:00:02 ora_mman_testdb

Oracle 28154 1 011:10? 00:00:00 ora_dbw0_testdb

Oracle 28156 1 011:10? 00:00:01 ora_lgwr_testdb

Oracle 28158 1 011:10? 00:00:01 ora_ckpt_testdb

Oracle 28160 1 011:10? 00:00:01 ora_smon_testdb

Oracle 28162 1 011:10? 00:00:00 ora_reco_testdb

Oracle 28164 1 011:10? 00:00:01 ora_mmon_testdb

Oracle 28166 1 011:10? 00:00:00 ora_mmnl_testdb

Oracle 28290 1 011:25? 00:00:00 ora_s001_testdb

Oracle 28292 1 011:25? 00:00:00 ora_d000_testdb

Oracle 28299 18875 0 11:29 pts/0 00:00:00 / bin/bash-c ps-ef | grep ora_

Oracle 28301 28299 0 11:29 pts/0 00:00:00 grep ora_

SQL > shutdown immediate

ORA-01507: database not mounted

ORACLE instance shut down.

SQL > startup mount

3.2 Application Log of the new repository:

SQL > alter database recover managed standby database using current logfile disconnect from session

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY TO PRIMARY MOUNTED MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

3.3.The status of the new slave database is set to open:

SQL > alter database open

Alter database open

*

ERROR at line 1:

ORA-10456: cannotopen standby database; media recovery session may be in progress

SQL > alter database recover managed standby database cancel

SQL > alter database open

The error is reported here because the database is in the application log.

3.4 New repository application log: 3.4.1 create standby log group

If you do not create a standby log group, the application log will report an error.

SQL > alter database recover managed standby database using current logfile disconnect from session

Alter database recover managed standby database using current logfile disconnect from session

*

ERROR at line 1:

ORA-38500: USING CURRENT LOGFILE option not available without standby redo logs

Set up Standby log to apply logs from the main library (original library) (11G new feature redo only with apply)

SQL > alter database add standby logfile thread 1 group 4'/ u01 size size 50m

SQL > alter database add standby logfile thread 1 group 5'/ u01According to an oradata size, TestdbUnip stdredo05.rdo' 50m

SQL > alter database add standby logfile thread 1 group 6'/ u01 size size 50m

SQL > alter database add standby logfile thread 1 group 7'/ u01 size size 50m

SQL > column member format A50

SQL > SELECT * FROM v$logfile order by group#

GROUP# STATUS TYPE MEMBER IS_

1 ONLINE / u01/app/oradata/testdb/redo01.rdo NO

2 ONLINE / u01/app/oradata/testdb/redo02.rdo NO

3 ONLINE / u01/app/oradata/testdb/redo03.rdo NO

4 STANDBY / u01/app/oradata/testdb/stdredo04.rdo NO

5 STANDBY / u01/app/oradata/testdb/stdredo05.rdo NO

6 STANDBY / u01/app/oradata/testdb/stdredo06.rdo NO

7 STANDBY / u01/app/oradata/testdb/stdredo07.rdo NO

3.4.2 New Library Application Log

SQL > alter database recover managed standby database using current logfile disconnect from session

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PHYSICAL STANDBY NOT ALLOWED READ ONLY WITH APPLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

4 status check and data validation 4.1 New main library check

When the new backup library (the original master library) starts normally, the state of the new master library is normal.

4.1.1 check whether the new master database has GAP

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY RESOLVABLE GAP READ WRITE MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

SQL > alter system switch logfile

SQL > SELECT database_role, switchover_status, open_mode, protection_mode, protection_level FROM v$database

DATABASE_ROLE SWITCHOVER_STATUS OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL

--

PRIMARY TOSTANDBY READ WRITE MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE

4.2 data validation 4.2.1 create tables in the new main library and insert data

SQL > SELECT username, account_status FROM dba_users WHERE username='HR'

USERNAME ACCOUNT_STATUS

HR OPEN

SQL > create table hr.table2 (id int, name varchar2 (20))

SQL > insert into hr.table2 values (01, 'Active DataGuard')

1 row created.

SQL > SELECT * FROM hr.table2

ID NAME

--

1 Active DataGuard

SQL > commit

4.2.2 Verification of the new library (original main library)

SQL > SELECT * FROM hr.table2

ID NAME

--

1 Active DataGuard

Attachment: http://down.51cto.com/data/2367432

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report