您的位置:首页 > 其它

配置data guard broker时遇到的几个问题

2013-05-31 17:16 381 查看
配置data guard broker时遇到的几个问题

 

环境:

oracle 11203 on rhel6.3

primary: RAC

standby: instance

 

 

问题1:

DGMGRL> create configuration 'DRSoution' as

> primary database is 'tantest'

> connect identifier is tantest;

Error:

ORA-16525: the Data Guard broker is not yet available

ORA-06512: at "SYS.X$DBMS_DRS", line 228

ORA-06512: at line 1

DGMGRL> create configuration 'DRSoution' as

> primary database is 'tantest'

> connect identifier is tantest;

Error: ORA-16584: operation cannot be performed on a standby database

上面问题是必须连接到主库dgmgrl

问题2:

DGMGRL> create configuration 'DRSolution' as

> primary database is 'tantest'

> connect identifier by tantest;

connect identifier by tantest;

                   ^

Syntax error before or at "by"

DGMGRL>

DGMGRL>

DGMGRL>  create configuration 'DRSolution' as

>  primary database is 'tantest'

> connect identifier is tantest;

Error: ORA-16571: Data Guard configuration file creation failure

Failed.

这个问题是因为dg_broker_config_file1 指定的目录有问题:

我的源端是RAC环境,该目录在ASM中,目录路径没有写全,导致出现该问题。文件broker配置中会自动创建,但目录不会自动创建,必须写全。

问题3:

DGMGRL> add database 'DGBRO' as

> connect identifier is dgbro;

Error: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

SQL下连接正常,在dgmgrl下不正常。

原因是connect identifier is dgbro;读的dgbro是在主库的tnsname.ora中的,必须把主库的写正确。

问题4:

DGMGRL> show configuration

Configuration - DRSolution

  Protection Mode: MaxPerformance

  Databases:

    tantest - Primary database

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

    dgbro   - Physical standby database

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

Fast-Start Failover: DISABLED

Configuration Status:

WARNING

DGMGRL>

DGMGRL> show database 'tantest';

Database - tantest

  Role:            PRIMARY

  Intended State:  TRANSPORT-ON

  Instance(s):

    tantest1

    tantest2

  Database Warning(s):

    ORA-16789: standby redo logs not configured

    ORA-16789: standby redo logs not configured

Database Status:

WARNING

参照了下面的方法解决

http://www.oracledbasupport.co.uk/dgmgrl-ora-16789-standby-redo-logs-not-configuredora-16826-apply-service-state-is-inconsistent-with-the-delaymins-property/

在主库执行:

SQL> SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;

no rows selected

SQL> select bytes from v$log;

     BYTES

----------

  52428800

  52428800

  52428800

  52428800

SQL> select group#, member from v$logfile;

    GROUP#

----------

MEMBER

       2

+DATA1/tantest/onlinelog/group_2.262.816103583

         1

+DATA1/tantest/onlinelog/group_1.261.816103581

         3

+DATA1/tantest/onlinelog/group_3.265.816103973

         4

+DATA1/tantest/onlinelog/group_4.266.816103975

都是主库执行

alter database add standby logfile group 5 size 50m;

alter database add standby logfile group 6 size 50m;

alter database add standby logfile group 7 size 50m;

alter database add standby logfile group 8 size 50m;

SQL> select * from v$standby_log;  

    GROUP# DBID                                                                                THREAD#  SEQUENCE#      BYTES  BLOCKSIZE       USED ARCHIV STATUS           FIRST_CHANGE# FIRST_TIME   NEXT_CHANGE# NEXT_TIME    LAST_CHANGE# LAST_TIME

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

         5 UNASSIGNED                                                                                0          0   52428800        512      0 YES    UNASSIGNED

         6 UNASSIGNED                                                                                0          0   52428800        512      0 YES    UNASSIGNED

         7 UNASSIGNED                                                                                0          0   52428800        512      0 YES    UNASSIGNED

         8 UNASSIGNED                                                                                0          0   52428800        512      0 YES    UNASSIGNED

DGMGRL> show database tantest

Database - tantest

  Role:            PRIMARY

  Intended State:  TRANSPORT-ON

  Instance(s):

    tantest1

    tantest2

Database Status:

SUCCESS

DGMGRL>

问题5:

DGMGRL> show database verbose 'dgbro';

Database - dgbro

  Role:            PHYSICAL STANDBY

  Intended State:  APPLY-ON

  Transport Lag:   0 seconds

  Apply Lag:       20 minutes 29 seconds

  Real Time Query: OFF

  Instance(s):

    dgbro

      Warning: ORA-16714: the value of property ArchiveLagTarget is inconsistent with the database setting

      Warning: ORA-16714: the value of property LogArchiveMinSucceedDest is inconsistent with the database setting

      Warning: ORA-16714: the value of property LogArchiveTrace is inconsistent with the database setting

      Warning: ORA-16714: the value of property LogArchiveFormat is inconsistent with the database setting

  Database Warning(s):

    ORA-16826: apply service state is inconsistent with the DelayMins property

  Properties:

    DGConnectIdentifier             = 'dgbro'

    ObserverConnectIdentifier       = ''

    LogXptMode                      = 'ASYNC'

    DelayMins                       = '0'

    Binding                         = 'OPTIONAL'

    MaxFailure                      = '0'

    MaxConnections                  = '1'

    ReopenSecs                      = '300'

    NetTimeout                      = '30'

    RedoCompression                 = 'DISABLE'

    LogShipping                     = 'ON'

    PreferredApplyInstance          = ''

    ApplyInstanceTimeout            = '0'

    ApplyParallel                   = 'AUTO'

    StandbyFileManagement           = 'AUTO'

    ArchiveLagTarget                = '0'

    LogArchiveMaxProcesses          = '30'

    LogArchiveMinSucceedDest        = '1'

    DbFileNameConvert               = 'tantest, dgbro'

    LogFileNameConvert              = '+FRI/TANTEST/ARCH1, /u01/arch2, +FRI/TANTEST/ARCH2, /u01/arch2'

    FastStartFailoverTarget         = ''

    InconsistentProperties          = '(monitor)'

    InconsistentLogXptProps         = '(monitor)'

    SendQEntries                    = '(monitor)'

    LogXptStatus                    = '(monitor)'

    RecvQEntries                    = '(monitor)'

    SidName                         = 'dgbro'

    StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oeltodd)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dgbro_DGMGRL)(INSTANCE_NAME=dgbro)(SERVER=DEDICATED)))'

    StandbyArchiveLocation          = '/u01/arch1/'

    AlternateLocation               = ''

    LogArchiveTrace                 = '0'

    LogArchiveFormat                = '%t_%s_%r.dbf'

    TopWaitEvents                   = '(monitor)'

Database Status:

WARNING

有几个参数和数据库中不一致,修改:
DGMGRL> edit database 'dgbro' set property 'LogArchiveFormat'='%t_%s_%r.dbf';

DGMGRL> edit database 'dgbro' set property 'ArchiveLagTarget'='0';

DGMGRL> edit database 'dgbro' set property 'LogArchiveMinSucceedDest'='1';

DGMGRL> edit database 'dgbro' set property 'LogArchiveTrace'='0';

下面这个参数得大于0

DGMGRL> edit database 'dgbro' set property 'DelayMins'='1';

DGMGRL> edit database 'tantest' set property 'DelayMins'='1';

再次检查正确:

DGMGRL> show database verbose dgbro;

Database - dgbro

  Role:            PHYSICAL STANDBY

  Intended State:  APPLY-ON

  Transport Lag:   0 seconds

  Apply Lag:       1 minute 49 seconds

  Real Time Query: OFF

  Instance(s):

    dgbro

  Properties:

    DGConnectIdentifier             = 'dgbro'

    ObserverConnectIdentifier       = ''

    LogXptMode                      = 'ASYNC'

    DelayMins                       = '1'

    Binding                         = 'OPTIONAL'

    MaxFailure                      = '0'

    MaxConnections                  = '1'

    ReopenSecs                      = '300'

    NetTimeout                      = '30'

    RedoCompression                 = 'DISABLE'

    LogShipping                     = 'ON'

    PreferredApplyInstance          = ''

    ApplyInstanceTimeout            = '0'

    ApplyParallel                   = 'AUTO'

    StandbyFileManagement           = 'AUTO'

    ArchiveLagTarget                = '0'

    LogArchiveMaxProcesses          = '30'

    LogArchiveMinSucceedDest        = '1'

    DbFileNameConvert               = 'tantest, dgbro'

    LogFileNameConvert              = '+FRI/TANTEST/ARCH1, /u01/arch2, +FRI/TANTEST/ARCH2, /u01/arch2'

    FastStartFailoverTarget         = ''

    InconsistentProperties          = '(monitor)'

    InconsistentLogXptProps         = '(monitor)'

    SendQEntries                    = '(monitor)'

    LogXptStatus                    = '(monitor)'

    RecvQEntries                    = '(monitor)'

    SidName                         = 'dgbro'

    StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oeltodd)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dgbro_DGMGRL)(INSTANCE_NAME=dgbro)(SERVER=DEDICATED)))'

    StandbyArchiveLocation          = '/u01/arch1/'

    AlternateLocation               = ''

    LogArchiveTrace                 = '0'

    LogArchiveFormat                = '%t_%s_%r.dbf'

    TopWaitEvents                   = '(monitor)'

Database Status:

SUCCESS

DGMGRL>

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: