Monday, September 29, 2025

Migrate database from ODA X8-2 to X11-2

Thank you very much for your interest.Hope you will learn something useful.

 

Current Configuration

Future configuration

ODA X8-2

 

ODA X11-2

 

GI version 19.10

GI version 19.26

Database version 19.6

 

Database version 19.26

 

 

Note:-Active data guard is setup between primary and standby but dataguard broker is not present.

Test Setup: To test migration approach  a small primary database orcltest and a standby database orcldg has been created.Standby DB orcldg has been registered in catalog database and successful backup has been taken.

We will now add broker configuration which is needed later point of time in X-11 platform for switchover

1.     Connect to your primary/standby database and check the value of DG_BROKER_START

SQL> show parameter dg_broker_start

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

dg_broker_start                      boolean     FALSE

2.     set the DG_BROKER_START   parameter to TRUE.

SQL> alter system set dg_broker_start=true;

3.     Invoke DGMGRL and connect to your primary database.

oracle@orcltest/db:$ dgmgrl sys/*****@orcltest

DGMGRL for Linux: Release 19.0.0.0.0 - Production on Thu Sep 25 11:33:05 2025

Version 19.6.0.0.0

 

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

 

Welcome to DGMGRL, type "help" for information.

Connected to "orcltest"

Connected as SYSDBA.

4.     Create the broker configuration for the primary database and verify

DGMGRL> create configuration dgconfig_orcltest as primary database is 'orcltest' connect identifier is orcltest;

Configuration "dgconfig_orcltest" created with primary database "orcltest"

DGMGRL> show configuration

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest - Primary database

 

Fast-Start Failover:  Disabled

 

Configuration Status:

DISABLED

5.     Use the following commands to add your physical standby database to the broker configuration.

DGMGRL> add database 'orcldg' as connect identifier is orcldg;

Database "orcldg" added

DGMGRL> show configuration

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest  - Primary database

    orcldg - Physical standby database

 

Fast-Start Failover:  Disabled

 

Configuration Status:

DISABLED

6.     Enable broker configuration and check lag

DGMGRL> enable configuration

Enabled.

DGMGRL> show configuration lag verbose;

 Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest  - Primary database

    orcldg - Physical standby database

               Transport Lag:      0 seconds (computed 0 seconds ago)

               Apply Lag:          0 seconds (computed 0 seconds ago)

 

  Properties:

    FastStartFailoverThreshold      = '30'

    OperationTimeout                = '30'

    TraceLevel                      = 'USER'

    FastStartFailoverLagLimit       = '30'

    CommunicationTimeout            = '180'

    ObserverReconnect               = '0'

    FastStartFailoverAutoReinstate  = 'TRUE'

    FastStartFailoverPmyShutdown    = 'TRUE'

    BystandersFollowRoleChange      = 'ALL'

    ObserverOverride                = 'FALSE'

    ExternalDestination1            = ''

    ExternalDestination2            = ''

    PrimaryLostWriteAction          = 'CONTINUE'

    ConfigurationWideServiceName    = 'orcltest_CFG'

 

Fast-Start Failover:  Disabled

 

Configuration Status:

SUCCESS

We can check same lag command in standby site.

7.     Test switchover from broker.Use below command in standby sisde

DGMGRL> validate database 'orcldg';

 

  Database Role:     Physical standby database

  Primary Database:  orcltest

 

  Ready for Switchover:  Yes

  Ready for Failover:    Yes (Primary Running)

 

  Flashback Database Status:

    orcltest :  Off

    orcldg:  Off

 

  Managed by Clusterware:

    orcltest :  YES

    orcldg:  YES

 

  Current Log File Groups Configuration:

    Thread #  Online Redo Log Groups  Standby Redo Log Groups Status

              (orcltest)               (orcldg)

    1         3                       2                       Insufficient SRLs

 

  Future Log File Groups Configuration:

    Thread #  Online Redo Log Groups  Standby Redo Log Groups Status

              (orcldg)              (orcltest)

    1         3                       0                       Insufficient SRLs

    Warning: standby redo logs not configured for thread 1 on orcltest

So it shows that we are not ready to switchover.

 

Query from primary database orcltest shows that thread 0 which is not valid for group 4,5,6

SQL> select GROUP#,THREAD#,BYTES/1024/1024/1024,ARCHIVED,STATUS,CON_ID

      from v$standby_log; 

 

    GROUP#    THREAD# BYTES/1024/1024/1024 ARC STATUS         CON_ID

---------- ---------- -------------------- --- ---------- ----------

         4          0                    4 YES UNASSIGNED          0

         5          0                    4 YES UNASSIGNED          0

         6          0                    4 YES UNASSIGNED          0

SQL> select GROUP#,THREAD#,BYTES/1024/1024/1024,ARCHIVED,STATUS,CON_ID from v$log;

 

    GROUP#    THREAD# BYTES/1024/1024/1024 ARC STATUS               CON_ID

---------- ---------- -------------------- --- ---------------- ----------

         1          1                    4 NO  CURRENT                   0

         2          1                    4 YES INACTIVE                  0

         3          1                    4 YES INACTIVE                  0

Query from standby database orcldg shows that thread 0 which is not valid for group 6

SQL> select GROUP#,THREAD#,BYTES/1024/1024/1024,ARCHIVED,STATUS,CON_ID

      from v$standby_log;

    GROUP#    THREAD# BYTES/1024/1024/1024 ARC STATUS         CON_ID

---------- ---------- -------------------- --- ---------- ----------

         4          1                    4 YES ACTIVE              0

         5          1                    4 NO  UNASSIGNED          0

         6          0                    4 YES UNASSIGNED          0

 

SQL> select GROUP#,THREAD#,BYTES/1024/1024/1024,ARCHIVED,STATUS,CON_ID from v$log;

 

    GROUP#    THREAD# BYTES/1024/1024/1024 ARC STATUS               CON_ID

---------- ---------- -------------------- --- ---------------- ----------

         1          1                    4 YES UNUSED                    0

         2          1                    4 YES UNUSED                    0

         3          1                    4 YES UNUSED                    0

 

        Fix:-Cancel mrp in standby and recreate standby redo log file with thread 1.

        Dropping of standby redo log file was failing because we have active standby log file as shown below

SQL> ALTER DATABASE DROP STANDBY LOGFILE GROUP 4;

ALTER DATABASE DROP STANDBY LOGFILE GROUP 4

*

ERROR at line 1:

ORA-00261: log 4 of thread 1 is being archived or modified

ORA-00312: online log 4 thread 1: '+RECO/ORCLDG/ONLINELOG/group_4.990.1212589559'

 

 

SQL> select group#, thread#, sequence#, status from v$standby_log;

 

    GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------

         4          1         10 ACTIVE

         5          1          0 UNASSIGNED

         6          0          0 UNASSIGNED

          Drop and recreate group 5 and 6 like below

SQL> alter database drop logfile group 5;

 

Database altered.

 

SQL> alter database add standby logfile thread 1 group 5 size 4G;

 

Database altered.

 

Then switch logfile in primary and then you can see that active standby redo log is in group 5.

            Perform same drop and recreate steps in standby orcldg.Validate like below

SQL> select GROUP#,THREAD#,BYTES/1024/1024/1024,ARCHIVED,STATUS,CON_ID from v$standby_log;

 

    GROUP#    THREAD# BYTES/1024/1024/1024 ARC STATUS         CON_ID

---------- ---------- -------------------- --- ---------- ----------

         4          1                    4 YES UNASSIGNED          0

         5          1                    4 YES UNASSIGNED          0

         6          1                    4 YES UNASSIGNED          0

Now we can see that warning is not appearing anymore

DGMGRL> validate database 'orcldg';

 

  Database Role:     Physical standby database

  Primary Database:  orcltest

 

  Ready for Switchover:  Yes

  Ready for Failover:    Yes (Primary Running)

 

  Flashback Database Status:

    orcltest :  Off

    orcldg:  Off

 

  Managed by Clusterware:

    orcltest :  YES

    orcldg:  YES

 

  Current Log File Groups Configuration:

    Thread #  Online Redo Log Groups  Standby Redo Log Groups Status

              (orcltest)               (orcldg)

    1         3                       3                       Insufficient SRLs

 

  Future Log File Groups Configuration:

    Thread #  Online Redo Log Groups  Standby Redo Log Groups Status

              (orcldg)              (orcltest)

    1         3                       3                       Insufficient SRLs

 

Before switchover check log_archive_dest_1 and dest_2 parameter which is set nothing

From standby database connect to dgmgrl and use below command

 

DGMGRL> switchover to orcldg;

Performing switchover NOW, please wait...

New primary database "orcldg" is opening...

Oracle Clusterware is restarting database "orcltest" ...

Connected to "orcltest"

Connected to "orcltest"

Switchover succeeded, new primary is "orcldg"

 

DGMGRL> show configuration

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcldg - Primary database

    orcltest  - Physical standby database

 

Fast-Start Failover:  Disabled

 

Configuration Status:

SUCCESS   (status updated 57 seconds ago)

 

 

 

 

We can see that now log_archive_dest_2 has been set after switchover

SQL> show parameter log_archive_dest_2

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

log_archive_dest_2                   string      service="orcltest", ASYNC NOAFFIRM delay=0 optional compression=disable max_failure=0 reope

                                                                   n=300 db_unique_name="orcltest"  net_timeout=30, valid_for=(online_logfile,all_roles)

***********************************Broker configuration and switchover Testing completed successfully******************************************

Note:-Create Pfile from spfile which will be used later.

Create 2nd standby database from the backup of standby database

1.Create an init parameter file inittemp.ora with the following minimum required parameters and bring up the instance

DB_NAME=orcltest

DB_UNIQUE_NAME=ORCLPRIM

control_files='+RECO/ORCLPRIM/CONTROLFILE/control01.ctl'

fal_server=orcltest

fal_client=ORCLPRIM

db_file_name_convert='ORCLDG','ORCLPRIM'

log_file_name_convert='ORCLDG','ORCLPRIM'

db_recovery_file_dest='+RECO'

db_recovery_file_dest_size=200G

log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES)

2.  Set oracle environment and start instance in nomount mode using the pfile

     export ORACLE_SID=ORCLPRIM

     export ORACLE_BASE=/u01/app/odaorabase/oracle

     export ORACLE_HOME=/u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1

     startup nomount pfile=’$ORACLE_HOME/dbs/inittemp.ora’

3. Get latest controlfile backup piece and restore standby controlfile from that backup piece

    Go to standby site(orcldg) use below command to get that information

     List backup of controlfile

BS Key  Type LV Size       Device Type Elapsed Time Completion Time

------- ---- -- ---------- ----------- ------------ -------------------

22      Full    10.20M     DISK        00:00:01     2025-09-25 13:51:30

        BP Key: 22   Status: AVAILABLE  Compressed: NO  Tag: TAG20250925T135129

        Piece Name: /tmp/rman/orcldg/c-129063019-20250925-02

  Standby Control File Included: Ckp SCN: 2847189      Ckp time: 2025-09-25 13:51:01

Login in new X11 server

rman target /

RMAN> restore standby controlfile from '/tmp/rman/orcldg/c-129063019-20250925-02';

restore standby controlfile from '/tmp/rman/orcldg/c-129063019-20250925-02';

Starting restore at 26-SEP-25

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=4332 device type=DISK

 

channel ORA_DISK_1: restoring control file

channel ORA_DISK_1: restore complete, elapsed time: 00:00:02

output file name=+RECO/ORCLPRIM/CONTROLFILE/control01.ctl

Finished restore at 26-SEP-25

 

4. Mount the database and catalog backup piece

    RMAN> alter database mount;

alter database mount;

released channel: ORA_DISK_1

Statement processed

 

RMAN> catalog start with '/tmp/rman/orcldg/';

catalog start with '/tmp/rman/orcldg/';

searching for all files that match the pattern /tmp/rman/orcldg/

 

List of Files Unknown to the Database

=====================================

File Name: /tmp/rman/orcldg/3744ig8m_1_1

File Name: /tmp/rman/orcldg/c-129063019-20250925-02

File Name: /tmp/rman/orcldg/3844ig8m_1_1

File Name: /tmp/rman/orcldg/3944ig8m_1_1

File Name: /tmp/rman/orcldg/c-129063019-20250925-03

File Name: /tmp/rman/orcldg/3a44ig8m_1_1

File Name: /tmp/rman/orcldg/3c44ig8m_1_1

File Name: /tmp/rman/orcldg/3b44ig8m_1_1

 

Do you really want to catalog the above files (enter YES or NO)? yes

cataloging files...

cataloging done

 

List of Cataloged Files

=======================

File Name: /tmp/rman/orcldg/3744ig8m_1_1

File Name: /tmp/rman/orcldg/c-129063019-20250925-02

File Name: /tmp/rman/orcldg/3844ig8m_1_1

File Name: /tmp/rman/orcldg/3944ig8m_1_1

File Name: /tmp/rman/orcldg/c-129063019-20250925-03

File Name: /tmp/rman/orcldg/3a44ig8m_1_1

File Name: /tmp/rman/orcldg/3c44ig8m_1_1

File Name: /tmp/rman/orcldg/3b44ig8m_1_1

 

5. From primary database generate below statement and save in a file clone.cmd

    select ‘set new name for datafile ‘||file#||’ to ‘’+DATA’’;’ from v$datafile;

 

6. execute clone.cmd in RMAN prompt

RMAN> @/home/oracle/clone.cmd

@/home/oracle/clone.cmd

RMAN> run

2> {set newname for datafile 1 to '+DATA' ;

3> set newname for datafile 3 to  '+DATA' ;

4> set newname for datafile 4 to '+DATA' ;

5> set until sequence 20;

6> restore database;

7> switch datafile all;

8> recover database;

9> }


8.     Shutdown and start with actual pfile created for database and then create spfile from that

SQL> startup nomount pfile='$ORACLE_HOME/dbs/initORCLPRIM.ora'

ORACLE instance started.

 

Total System Global Area 1.0286E+11 bytes

Fixed Size                 37352048 bytes

Variable Size            1.5032E+10 bytes

Database Buffers         8.7510E+10 bytes

Redo Buffers              276926464 bytes

 

SQL> create spfile from pfile='$ORACLE_HOME/dbs/initORCLPRIM.ora';

 

File created.

We can see spfile has been created

ASMCMD> ls -l  +DATA/ORCLPRIM/PARAMETERFILE/

Type           Redund  Striped  Time             Sys  Name

PARAMETERFILE  MIRROR  COARSE   SEP 26 06:00:00  Y    spfile.269.1212821133

9.     Register this spfile in cluster using srvctl command

srvctl modify database -d ORCLPRIM -spfile '+DATA/ORCLPRIM/PARAMETERFILE/spfile.269. 1212821679'

srvctl config database -d ORCLPRIM

Database unique name: ORCLPRIM

Database name: ORCLPRIM

Oracle home: /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1

Oracle user: oracle

Spfile: +DATA/ORCLPRIM/PARAMETERFILE/spfile.269. 1212821679

Password file: /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/dbs/orapwORCLPRIM

Domain: world

Start options: open

Stop options: immediate

Database role: PRIMARY

Management policy: AUTOMATIC

Server pools:

Disk Groups: DATA,RECO

Mount point paths: /u01/app/odaorahome,/u01/app/odaorabase0,/u01/app/odaorabase1

Services:

Type: SINGLE

OSDBA group: dba

OSOPER group: dbaoper

Database instance: ORCLPRIM

Configured nodes: tuslpmdmoda03a,tuslpmdmoda03b

CSS critical: no

CPU count: 0

Memory target: 0

Maximum memory: 0

Default network number for database services:

Database is administrator managed

Now,Start the database using spfile.

10.  Add following parameter in standby database mdp

Alter system set fal_server=’orcltest’;

Alter system set fal_client=’ORCLPRIM’

 

11.  Add following parameters in primary database orcltest and standby database in sequence

SQL> alter system set log_archive_config='DG_CONFIG=(orcltest,orcldg,ORCLPRIM)';

 

System altered.

 

SQL> alter system set LOG_ARCHIVE_DEST_3='SERVICE=ORCLPRIM.world ASYNC VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE) DB_UNIQUE_NAME=ORCLPRIM';

 

System altered.

In standby database ORCLPRIM

Alter system set log_archive_config=’DG_CONFIG(orcltest,orcldg,ORCLPRIM)’;

 

Tried to add in broker but it failed

DGMGRL> add database 'ORCLPRIM' as connect identifier is ORCLPRIM;

Database "ORCLPRIM" added

DGMGRL> show configuration

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest  - Primary database

    orcldg - Physical standby database

    ORCLPRIM     - Physical standby database (disabled)

      ORA-16905: The member was not enabled yet.

 

Fast-Start Failover:  Disabled

 

Configuration Status:

SUCCESS   (status updated 46 seconds ago)

 

DGMGRL> enable database 'ORCLPRIM';

Enabled.

DGMGRL> show configuration

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest  - Primary database

    orcldg - Physical standby database

    ORCLPRIM     - Physical standby database

      Error: ORA-16664: unable to receive the result from a member

 

Fast-Start Failover:  Disabled

 

Configuration Status:

ERROR   (status updated 44 seconds ago)

 

Enable trace in ORCLPRIM database

SQL> alter system set dg_broker_Start=false;
SQL> alter system set events '16191 trace name errorstack level 10';
SQL> alter system set dg_broker_Start=true;

Disable trace

SQL> alter system set dg_broker_Start=false;
SQL> alter system set events '16191 trace name errorstack off';
SQL> alter system set dg_broker_Start=true;

 

Found below error in drcorcltest.log under trace directory

EDIT DATABASE ORCLPRIM SET PROPERTY ClusterDatabase = TRUE completed with error ORA-16524

Connected to broker and made the property as false

EDIT DATABASE ORCLPRIM SET PROPERTY ClusterDatabase = FLASE;

  

There were 2 active standby redo log as shown in below and one was pointing to non-existing path highlighted below.

 

   GROUP# STATUS  TYPE    MEMBER                                             IS_     CON_ID

---------- ------- ------- -------------------------------------------------- --- ----------

         3         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_3.315.1212997323        NO           0

         2         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_2.314.1212997321        NO           0

         1         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_1.286.1212997321        NO           0

         4         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_4.288.1212997309        NO           0

         5         STANDBY +RECO/ORCLDG/ONLINELOG/group_5.1285.1212757847   NO           0

         6         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_6.313.1212997307        NO           0

         7         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_7.318.1212998067        NO           0

 

    GROUP# DBID                    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE       USED ARC STATUS     FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME LAST_CHANGE# LAST_TIME     CON_ID

---------- -------------------- ---------- ---------- ---------- ---------- ---------- --- ---------- ------------- --------- ------------ --------- ------------ --------- ----------

         4 129063019                     1         20 4294967296        512          0 YES ACTIVE           2845302 25-SEP-25                                   0                    0

         5 129063019                     1         30 4294967296        512     478720 YES ACTIVE           3045912 26-SEP-25                             3047648 26-SEP-25          0

         6 UNASSIGNED                    1          0 4294967296        512          0 NO  UNASSIGNED                                                                                0

 

This has been fixed like below

SQL> alter database clear logfile group 5;

 

Database altered.

 

SQL> select * from v$logfile;

 

    GROUP# STATUS  TYPE    MEMBER                                             IS_     CON_ID

---------- ------- ------- -------------------------------------------------- --- ----------

         3         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_3.315.1212997323        NO           0

         2         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_2.314.1212997321        NO           0

         1         ONLINE  +RECO/ORCLPRIM/ONLINELOG/group_1.286.1212997321        NO           0

         4         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_4.288.1212997309        NO           0

         5         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_5.324.1213000229        NO           0

         6         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_6.313.1212997307        NO           0

         7         STANDBY +RECO/ORCLPRIM/ONLINELOG/group_7.318.1212998067        NO           0

 

 Now I can see only 1 active standby redo log file

SQL> select * from v$standby_Log;

 

    GROUP# DBID                    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE       USED ARC STATUS     FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME LAST_CHANGE# LAST_TIME     CON_ID

---------- -------------------- ---------- ---------- ---------- ---------- ---------- --- ---------- ------------- --------- ------------ --------- ------------ --------- ----------

         4 129063019                     1         61 4294967296        512     252928 YES ACTIVE           3489852 28-SEP-25                             3490790 28-SEP-25          0

         5 UNASSIGNED                    1          0 4294967296        512          0 YES UNASSIGNED                                                                                0

         6 UNASSIGNED                    1          0 4294967296        512          0 NO  UNASSIGNED                                                                                0

         7 UNASSIGNED                    1          0 4294967296        512          0 YES UNASSIGNED                                                                                0

 

DGMGRL> show configuration verbose;

 

Configuration - dgconfig_orcltest

 

  Protection Mode: MaxPerformance

  Members:

  orcltest  - Primary database

    orcldg - Physical standby database

    ORCLPRIM     - Physical standby database

 

  Properties:

    FastStartFailoverThreshold      = '30'

    OperationTimeout                = '30'

    TraceLevel                      = 'USER'

    FastStartFailoverLagLimit       = '30'

    CommunicationTimeout            = '180'

    ObserverReconnect               = '0'

    FastStartFailoverAutoReinstate  = 'TRUE'

    FastStartFailoverPmyShutdown    = 'TRUE'

    BystandersFollowRoleChange      = 'ALL'

    ObserverOverride                = 'FALSE'

    ExternalDestination1            = ''

    ExternalDestination2            = ''

    PrimaryLostWriteAction          = 'CONTINUE'

    ConfigurationWideServiceName    = 'orcltest_CFG'

 

Fast-Start Failover:  Disabled

 

Configuration Status:

SUCCESS

 

Standby site

dgmgrl sys/*****@ORCLPRIM

DGMGRL for Linux: Release 19.0.0.0.0 - Production on Sun Sep 28 08:44:26 2025

Version 19.26.0.0.0

 Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

 Welcome to DGMGRL, type "help" for information.

Connected to "ORCLPRIM"

Connected as SYSDBA.

DGMGRL> validate database 'ORCLPRIM';

   Database Role:     Physical standby database

  Primary Database:  orcltest

   Ready for Switchover:  Yes

  Ready for Failover:    Yes (Primary Running)

   Flashback Database Status:

    orcltest:  Off

    ORCLPRIM   :  Off

   Managed by Clusterware:

    orcltest:  YES

    ORCLPRIM   :  YES

 Switching over to primary

 DGMGRL> show configuration;

 Configuration - dgconfig_orcltest

   Protection Mode: MaxPerformance

  Members:

  ORCLPRIM     - Primary database

    orcltest  - Physical standby database

    orcldg - Physical standby database

      Error: ORA-16664: unable to receive the result from a member

 Fast-Start Failover:  Disabled

 Configuration Status:

ERROR   (status updated 64 seconds ago)

 SQL> select name,db_unique_name,open_mode,database_role from v$database;

 NAME      DB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE

--------- ------------------------------ -------------------- ----------------

ORCLTEST   ORCLPRIM                           READ WRITE           PRIMARY

  SQL> select COMP_NAME,VERSION_FULL,STATUS from dba_registry;

 COMP_NAME                                                                        VERSION_FULL                   STATUS

-------------------------------------------------------------------------------- ------------------------------ --------------------------------------------

Oracle Database Catalog Views                                                    19.6.0.0.0                     VALID

Oracle Database Packages and Types                                               19.6.0.0.0                     VALID

Oracle Real Application Clusters                                                 19.6.0.0.0                     VALID

JServer JAVA Virtual Machine                                                     19.6.0.0.0                     VALID

Oracle XDK                                                                       19.6.0.0.0                     VALID

Oracle Database Java Packages                                                    19.6.0.0.0                     VALID

OLAP Analytic Workspace                                                          19.6.0.0.0                     VALID

Oracle XML Database                                                              19.6.0.0.0                     VALID

Oracle Workspace Manager                                                         19.6.0.0.0                     VALID

Oracle Text                                                                      19.6.0.0.0                     VALID

Oracle Multimedia                                                                19.6.0.0.0                     VALID

Spatial                                                                          19.6.0.0.0                     VALID

Oracle OLAP API                                                                  19.6.0.0.0                     VALID

Oracle Label Security                                                            19.6.0.0.0                     VALID

Oracle Database Vault                                                            19.6.0.0.0                     VALID

 

Run below command from the location so that catalog is upgraded to 19.26

cd /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1/OPatch

./datapatch -verbose


Migrate database from ODA X8-2 to X11-2

Thank you very much for your interest.Hope you will learn something useful.   Current Configuration Future configuration ...