Scenario 12: Converting a Physical Standby to a Snapshot Standby

If you have a physical standby database that you would like to convert to a snapshot standby database, use the DGMGRL CONVERT DATABASE command.

Redo data will continue to be received by the database while it is operating as a snapshot standby database, but it will not be applied until the snapshot standby is converted back into a physical standby database.

A physical standby database must be configured with a fast recovery area to convert it to a snapshot standby database. This is because a guaranteed restore point is created during the conversion process, and guaranteed restore points require a fast recovery area.

DGMGRL> CONVERT DATABASE 'North_Sales' TO SNAPSHOT STANDBY;
2022-12-20T01:24:38.396+00:00
Converting database "North_Sales" to a Snapshot Standby database, please wait...

2022-12-20T01:25:12.244+00:00
Database "North_Sales" converted successfully

2022-12-20T01:25:12.244+00:00
DGMGRL> SHOW CONFIGURATION;

Configuration - DRSolution

  Protection Mode: MaxAvailability
  Members:
  South_Sales - Primary database
    North_Sales - Snapshot standby database 

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS   (status updated 33 seconds ago)

When you are ready to revert the database back to a physical standby database, use the DGMGRL CONVERT DATABASE command again as follows. Any updates made to the database while it was operating as a snapshot standby database will be discarded. All accumulated redo data will be applied by Redo Apply services after the database is converted back to a physical standby database.

DGMGRL>  CONVERT DATABASE 'North_Sales' TO PHYSICAL STANDBY;
2022-12-20T01:28:35.434+00:00
Converting database "North_Sales" to a Physical Standby database, please wait...

2022-12-20T01:28:35.495+00:00
Operation requires shut down of instance "NorthSales" on database "North_Sales"
Shutting down instance "NorthSales"...
Connected to "North_Sales"
Database closed.
Database dismounted.
ORACLE instance shut down.

2022-12-20T01:28:52.049+00:00
Operation requires start up of instance "NorthSales" on database "North_Sales"
Starting instance "NorthSales"...
Connected to an idle instance.
ORACLE instance started.
Connected to "North_Sales"
Database mounted.

2022-12-20T01:29:06.816+00:00
Continuing to convert database "North_Sales" ...

2022-12-20T01:29:27.289+00:00
Database "North_Sales" converted successfully

2022-12-20T01:29:27.289+00:00
Immediately after the snapshot standby database is converted back to a physical standby database, the configuration is in a WARNING state.
DGMGRL> SHOW CONFIGURATION;

Configuration - DRSolution

  Protection Mode: MaxAvailability
  Members:
  South_Sales - Primary database
    Warning: ORA-16629: Database reports a different protection level from the protection mode.

    North_Sales - Physical standby database 
      Warning: ORA-16854: apply lag could not be determined

Fast-Start Failover:  Disabled

Configuration Status:
WARNING   (status updated 41 seconds ago)

However, once Redo Apply begins applying redo again, the configuration is restored to a SUCCESS state:

DGMGRL> SHOW CONFIGURATION;

Configuration - DRSolution

  Protection Mode: MaxAvailability
  Members:
  South_Sales - Primary database
    North_Sales - Physical standby database 

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS   (status updated 59 seconds ago)