中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle standby的ORA-01578 ORA-01110 ORA-26040 坑爹的NOLOGGING

發布時間:2020-08-10 14:23:39 來源:ITPUB博客 閱讀:255 作者:guocun09 欄目:關系型數據庫

異常:

DB: Oracle 11.2.0.1 --版本夠low的

五一假期時給用戶DB做了switch over主備切換后,用了發現切換后新的主庫DB中報錯如下:

Wed May 08 09:44:14 2019
Errors in file /u01/product/diag/rdbms/new/orcl/trace/orcl_ora_100843.trc  (incident=50865):
ORA-01578: ORACLE 資料區塊損毀 (檔案編號 126, 區塊編號 4969)
ORA-01110: 資料檔 126: '/data/orcl/smt_idx01.dbf'
ORA-26040: 已使用 NOLOGGING 選項載入資料區塊

Incident details in: /u01/product/diag/rdbms/new/orcl/incident/incdir_50865/orcl_ora_100843_i50865.trc


========= Dump for incident 50865 (ORA 1578) ========

*** 2019-05-08 09:44:14.254
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=52s3v0xvc21j8) -----
SELECT
   ROWID, STATION_NUMBER, MACHINE_CODE, PRODUCT_NO,
   VER, EMP_NO, FEEDER_NO,
   KEY_PART_NO, WORK_TIME, SN,
   LINE_NAME, MO_NO, SIDE,
   LOT_NO, VENDOR, DATE_CODE,
   FEEDER_ID, KEY_PART_QTY, HH_PN,
   PACKED_QTY, MFG_PN, PKG_ID,
   CPL_ID, END_TIME, BOM_NO,
   CUST_PN, DIFFERENCE_QTY, USED_QTY
FROM SFISM4.R_SMT_LOG
Where
PKG_ID = 'VCI3011808R05ZI'


分析:

ORA-01578, ORA-01110 第一反應是有數據壞塊


使用DBV檢查壞塊

$dbv file=/data/orcl/smt_idx01.dbf BLOCKSIZE=16384
DBVERIFY: Release 11.2.0.1.0 - Production on Wed May 8 16:15:12 2019
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
DBVERIFY - Verification starting : FILE = /data/orcl/smt_idx01.dbf
DBV-00201: Block, DBA 528482373, marked corrupt for invalid redo application
DBV-00201: Block, DBA 528482374, marked corrupt for invalid redo application
DBV-00201: Block, DBA 528482375, marked corrupt for invalid redo application

....


DBVERIFY - Verification complete

Total Pages Examined         : 294400
Total Pages Processed (Data) : 0
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 259171
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 19965
Total Pages Processed (Seg)  : 0
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 15264
Total Pages Marked Corrupt   : 3
Total Pages Influx           : 0
Total Pages Encrypted        : 0
Highest block SCN            : 2390574971 (2791.2390574971)

DBV-00201 意味著主庫到備庫中部分redo沒有應用到datafile,


檢查切換之前的主庫(現在的備庫) 果然datafile  '/data/orcl/smt_idx01.dbf' 沒有應用

SELECT NAME, UNRECOVERABLE_CHANGE# FROM V$DATAFILE
where UNRECOVERABLE_CHANGE# >0

Oracle standby的ORA-01578 ORA-01110 ORA-26040 坑爹的NOLOGGING


此類問題通常是因為主庫中一些nologging的操作導致redo 沒能到備庫應用,

結合之前alert.log 的報錯“ ORA-26040: 已使用 NOLOGGING 選項載入資料區塊” ,基本確認了這個問題。

難道data guard 沒用開到force logging模式導致類似append 操作沒用同步?
select force_logging from v$database;

查詢 force_logging 為NO還真沒用啟用 force logging...


解決:

檢查 NOLOGGING影響 沒用同步datafile對應的segment:
select * from dba_extents
where file_id=126 and 4969 between block_id AND block_id + blocks - 1;

Oracle standby的ORA-01578 ORA-01110 ORA-26040 坑爹的NOLOGGING

還好segment全部是index,rebuild index即可解決。

注:如果是table 或其它文件需要對原主庫(現備庫)的datafile backup再至現主庫(原備庫)中還原恢復了。


最后,老生常談建立standby,一定記得開啟強制歸檔避免問題發生:

alter database force logging;


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

九龙县| 贞丰县| 玉环县| 锡林浩特市| 玉田县| 正阳县| 阿克苏市| 泸州市| 若羌县| 遵义县| 通渭县| 车险| 贵州省| 揭东县| 波密县| 德昌县| 万安县| 澜沧| 云梦县| 德化县| 乌海市| 邵武市| 河北区| 大田县| 汉源县| 密云县| 临朐县| 江西省| 萨迦县| 鹿泉市| 南靖县| 方城县| 汝州市| 陆良县| 平安县| 元谋县| 通渭县| 淅川县| 海宁市| 五峰| 肇庆市|