程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> OracleDG故障診斷一則:alterdatabaserecovertologicalstandbynew_logical_dbname卡住

OracleDG故障診斷一則:alterdatabaserecovertologicalstandbynew_logical_dbname卡住

編輯:Oracle教程

我們在基於物理standby的基礎上搭建邏輯備庫過程過程中,在執行:

alter database recover to logical standby READDB;

我們的業務是passport應用,無法停止或者停掉非常麻煩,總之,藥不能停。

經過摸索,我們得到一個經驗:需要等到MRP應用日志到跟主庫一致,此時執行該命令才不會hang住。

具體流程大概是這樣的:

1. 開啟實時日志應用

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION
在這個過程中,我們可以邊查看日志應用情況,在備庫執行如下命令:
SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

在主庫執行:

archive log list 
select max(sequence#) from v$archived_log;

2. 接著,我們需要在備庫停掉MRP進程:

alter database recover managed standby database cancel;
ERROR at line 1:
ORA-16136: Managed Standby Recovery not active

3. 然後,我們可以在主庫生成數據字典

exec dbms_logstdby.build; 
alter system archive log current;
alter database recover to logical standby READDB;

Good Luck!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved