ITPub博客

首页 > 数据库 > Oracle > [20170228]dg的日志传输与应用问题.txt

[20170228]dg的日志传输与应用问题.txt

原创 Oracle 作者:lfree 时间:2017-02-28 08:27:02 0 删除 编辑

[20170228]dg的日志传输与应用问题.txt

--//设置参数log_archive_dest_state_2=defer并不能马上停止日志传输与应用,通过测试说明问题:
--//以前使用dgmgrl管理时也遇到,工作中注意:
--//链接:http://blog.itpub.net/267265/viewspace-1825886/

1.环境:

SYS@book> @ &r/ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SYS@book> alter system set log_archive_dest_state_2=defer ;
System altered.

2.检查备库:
SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP#  THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------- ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A           0          0          0          0          0
RFS         28658 IDLE         LGWR     3             1        697        460          1          0
ARCH        27196 CLOSING      ARCH     6             1        696          1        102          0
MRP0        27229 APPLYING_LOG N/A      N/A           1        697        460     102400          0

--//等几秒.
SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP#  THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------- ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A           0          0          0          0          0
RFS         28658 IDLE         LGWR     3             1        697        604          1          0
ARCH        27196 CLOSING      ARCH     6             1        696          1        102          0
MRP0        27229 APPLYING_LOG N/A      N/A           1        697        604     102400          0

--//可以发现MRP0的BLOCK#一直在变化.要正常停止应用.

SYS@bookdg> alter database recover managed standby database cancel;
Database altered.

SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP# THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------ ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A          0          0          0          0          0
RFS         28658 IDLE         LGWR     3            1        697        711          1          0
ARCH        27196 CLOSING      ARCH     6            1        696          1        102          0

--//等几秒.

SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP# THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------ ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A          0          0          0          0          0
RFS         28658 IDLE         LGWR     3            1        697       2479          1          0
ARCH        27196 CLOSING      ARCH     6            1        696          1        102          0

--//RFS进程BLOCK#一直在变化,也就是日志在传输.

3.回到主库:
--//切换日志
SYS@book> alter system archive log current ;
System altered.

SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP# THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------ ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A          0          0          0          0          0
ARCH        27196 CLOSING      ARCH     5            1        697       2048        491          0

--//这样才停止传输与应用.这时即使执行:

SYS@bookdg> alter database recover managed standby database using current logfile disconnect ;
Database altered.

SYS@bookdg> @ &r/dg/dg
PROCESS       PID STATUS       CLIENT_P GROUP# THREAD#  SEQUENCE#     BLOCK#     BLOCKS DELAY_MINS
--------- ------- ------------ -------- ------ ------- ---------- ---------- ---------- ----------
RFS         28660 IDLE         UNKNOWN  N/A          0          0          0          0          0
ARCH        27196 CLOSING      ARCH     5            1        697       2048        491          0
MRP0        28667 WAIT_FOR_LOG N/A      N/A          1        698          0          0          0

--//MRP0 都等待主库传输过来日志.

4.总结:
--//在正常传输日志的情况下,修改参数log_archive_dest_state_2=defer并不能停止当前日志传输,而且等日志切换的时候.
--//停止日志应该执行alter database recover managed standby database cancel;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2134393/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7969673