主庫操作
SQL> col DEST_NAME for a20
SQL> col DESTINATION for a25
SQL> col ERROR for a15
SQL> col ALTERNATE for a20
SQL> set lines 1000
SQL>select DEST_NAME,DESTINATION,ERROR,ALTERNATE,TYPE,status,VALID_TYPE,VALID_ROLE from V$ARCHIVE_DEST where STATUS <>INACTIVE;
在主庫檢查創建的最后一個歸檔日志:
SQL> select thread#, max(sequence#) "Last Primary Seq Generated"
from gv$archived_log val, gv$database vdb
where val.resetlogs_change# = vdb.resetlogs_change#
group by thread# order by 1;
備庫操作
使用以下查詢,檢查從主數據庫接收到的最后一個歸檔日志;
查看備庫從主庫收到的最后一個歸檔日志:
SQL> select thread#, max(sequence#) "Last Standby Seq Received"
from gv$archived_log val, gv$database vdb
where val.resetlogs_change# = vdb.resetlogs_change#
group by thread# order by 1;
驗證初始化參數
log_archive_config
fal_server
db_unique_name
log_archive_dest_n
確保先決條件得到完全驗證,同時遵循以下指導以成功切換,這些步驟應在真正的計劃中斷開始之前執行,并確保沒有問題。
驗證重做/歸檔日志應用良好并且沒有GAP。
在備數據庫中運行以下查詢以檢查從所有線程接收和應用的最后一個歸檔日志序列,這將不包括當前序列,因為 SQL 正在從 v$archived_log 中提取詳細信息。
SQL> select thread#, max(sequence#) "Last Standby Seq Applied"
from gv$archived_log val, gv$database vdb
where val.resetlogs_change# = vdb.resetlogs_change#
and val.applied in (YES,IN- MEMORY)
group by thread# order by 1;
檢查 MRP 進程狀態(它應該開始運行并應用日志):
SQL> select * from gv$dataguard_process;
停止和啟動托管恢復過程的命令:
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
無論出于何種原因,如果備庫恢復 (MRP) 延遲啟動,或者如果備用數據庫始終保持滯后,則切換將消耗時間來應用要同步的日志。
在切換之前,盡量保持最小的歸檔日志應用延遲,這將減少總切換時間窗口。
檢查數據文件和臨時文件狀態。
預計所有數據文件在主備庫中都應該在線,如果有文件離線(或)不在在線狀態,則恢復文件并恢復以確保備庫文件與主庫文件相同。
如果有離線文件和切換后的文件,如果切換后需要在線,則將文件在線。
SQL> SELECT NAME FROM V$DATAFILE WHERE STATUS=OFFLINE;
SQL> ALTER DATABASE DATAFILE datafile-name ONLINE;
對于臨時文件:
SQL> select tf.name filename, bytes, ts.name tablespace from
v$tempfile tf, v$tablespace ts where tf.ts#=ts.ts#;
列出的臨時文件對于應用程序來說已經足夠好了,應該沒問題。
聯機和備用重做日志文件配置
set lines 150
col member for a50
select a.thread#,a.group#,a.bytes,a.blocksize,b.type,a.status,b.member from v$log a,v$logfile b where a.group#=b.group#;
從primary執行上述命令時,可能會得到:
a.status in (INACTIVE,ACTIVE,CURRENT)
Expected a.status from Standby is UNUSED, CLEARING or CLEARING_CURRENT,
如果輸出有不同的結果,則需要手動清除redo logfiles。
對于備庫redo日志文件(SRL):
select s.thread#,s.group#,s.status,s.bytes,l.type,l.member
from v$logfile l,v$standby_log s where s.group#=l.group#;
備用重做日志文件狀態將處于UNASSIGNED 或ACTIVE狀態。
清除 ORL 組的命令:
SQL> ALTER DATABASE CLEAR LOGFILE GROUP # >;
如果需要在備用數據庫中清除 ORL 或 SRL,則必須停止恢復過程。
檢查警報日志文件
select * from v$database_block_corruption; -- 它不返回任何行
select * from v$nonlogged_block; -- 它不返回任何行
檢查歸檔日志 GAP 和redo延遲應用
主庫執行以下命令:
SQL> SELECT STATUS, GAP_STATUS FROM V$ARCHIVE_DEST_STATUS
WHERE DEST_ID = 2;
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;
如果延遲沒有消除,那么切換將需要更長的時間。
SQL> ALTER DATABASE SWITCHOVER TO VERIFY;
如果出現錯誤,請修復問題,然后重新運行切換驗證命令。
SQL> ALTER DATABASE SWITCHOVER TO ;
如果步驟1成功,則按照步驟2啟動新的primay庫到open模式
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
DISCONNECT from SESSION;
在主庫:
SQL> alter system archive log current;
SQL>select dest_id,error,status from v$archive_dest where dest_id=>;
SQL>select max(sequence#),thread# from v$log_history group by thread#;
SQL>select max(sequence#) from v$archived_log where applied=YES and dest_id=2;
在備庫:
SQL>select max(sequence#),thread# from v$archived_log group by thread#;
SQL> select name,role,instance,thread#,sequence#,action from gv$dataguard_process;
END
更多精彩干貨分享
點擊下方名片關注
IT那活兒
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129737.html
RAC補丁日常更新成功反遇異常處理 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; m...
本文主要是給大家介紹了應用Docker制做Python自然環境聯接Oracle鏡像系統實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡快漲薪 Python聯接Oracle本地檢測 依靠安裝使用提前準備 Python、連接Oracle必須Python依靠和當地Oracle客戶端,接口測試Oracle版本號12.1.0.2.0,開發和測試自然環境為l...
19C?DG?Broker配置和測試 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; ...
MySQL集群MGR升級實施測試方案 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; ...
摘要:設置的密碼必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符。可以看到只允許訪問更新用戶表強制刷新權限再次查看用戶表。查看端口監聽狀態,修改配置文件這里可以看到表示所有均可訪問。1.準備① 檢測系統是否自帶安裝 MySQLrpm -qa | grep mysql如有,類似mysql-libs-5.1.52-1.el6_0.1.x86_64那可以選擇進行卸載:rpm -e mysql-li...
摘要:問題起因姐毫無征兆的在我們的水群里發來一段代碼她的目的是想從中隨機抽取個不重復的值組成一個新數組問我代碼是否有問題很遺憾因為我剛睡醒隨便貼了一下代碼運行了一下就說沒問題很快我就被打臉了也是如果沒問題的話她問個毛大家可以先找一下問題下面先 1.問題起因 W姐毫無征兆的在我們的水群里發來一段代碼: var arr = [{q:1+1=?,a:2,b:3,c:1},{q:1+2=?,a:2,...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20