Thursday, October 12, 2017

Warning: ORA-16809: multiple warnings detected for the database

Getting the error Warning: ORA-16809: multiple warnings detected for the database when using show configuration in dgmgrl

show database qa3tstp gave me the hit to check if the standby logs are created on primary or not.

Apparently they were not.

In short:

Stopped DR database
Created standby log on primary
Started DR database



Details:

DGMGRL> show configuration

Configuration - qa3tst_dg

  Protection Mode: MaxPerformance
  Members:
  qa3tstp - Primary database
    Warning: ORA-16809: multiple warnings detected for the database

    qa3tstd - Physical standby database
      Warning: ORA-16789: standby redo logs configured incorrectly

Fast-Start Failover: DISABLED

Configuration Status:
WARNING   (status updated 36 seconds ago)

DGMGRL>

DGMGRL> show database qa3tstp

Database - qa3tstp

  Role:               PRIMARY
  Intended State:     TRANSPORT-ON
  Instance(s):
    qa3tstp1
    qa3tstp2

  Database Warning(s):
    ORA-16789: standby redo logs configured incorrectly
    ORA-16789: standby redo logs configured incorrectly

Database Status:
WARNING

DGMGRL>



SQL> select group#, bytes/1024/1024 Log_file_size_MB from v$standby_log;

no rows selected

SQL>




[oracle@ractestdr01n01 (qa3tstd1) dbs]$ srvctl stop database -d qa3tstd




SQL> select group#, bytes/1024/1024 Log_file_size_MB from v$log;

    GROUP# LOG_FILE_SIZE_MB
---------- ----------------
         1              100
         2              100
         3              100
         4              100
         5              100
         6              100

6 rows selected.

SQL>
SQL>
SQL> alter database add standby logfile thread 1 size 104857600;
alter database add standby logfile thread 1 size 104857600;
alter database add standby logfile thread 1 size 104857600;

Database altered.

SQL>
Database altered.

SQL>
Database altered.

SQL> alter database add standby logfile thread 2 size 104857600;
alter database add standby logfile thread 2 size 104857600;
alter database add standby logfile thread 2 size 104857600;

Database altered.

SQL>
Database altered.

SQL>
Database altered.

SQL>
SQL>
SQL>



[oracle@ractestdr01n01 (qa3tstd1) dbs]$ srvctl start database -d qa3tstd




DGMGRL> connect sys
Password:
Connected as SYSDG.
DGMGRL> show configuration

Configuration - qa3tst_dg

  Protection Mode: MaxPerformance
  Members:
  qa3tstp - Primary database
    qa3tstd - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS   (status updated 6 seconds ago)

DGMGRL>

In case the standby logs are no there on DR side then you need to create them as well.

Creating the standby logs on DR

Monday, October 9, 2017

Silly mistake

As we move more one version of database to another I have a habit of updating the database name with 1,2,3,4 ...

in this case
qa1tst => 11.2.0.3
qa2tst => 12.1.2.0.2

I tired adding the password file and got a very sensible message and quickly realised that I am entering the wrong unique name



[oracle@testdbn01 (qa2tstp1) dbs]$ srvctl modify database -d qa1tstp -pwfile "+DATA/QA2TSTP/PASSWORD/pwdqa2tstp.9085.127745674"
PRCD-1229 : An attempt to access configuration of database qa1tstp was rejected because its version 11.2.0.3.0 differs from the program version 12.1.0.2.0. Instead run the program from /u01/app/oracle/product/11.2.0.3.
[oracle@testdbn01 (qa2tstp1) dbs]$
[oracle@testdbn01 (qa2tstp1) dbs]$ srvctl modify database -d qa2tstp -pwfile '+DATA/QA2TSTP/PASSWORD/pwdqa2tstp.9085.127745674'
[oracle@testdbn01 (qa2tstp1) dbs]$


By using the correct name fixed this error.