Oracle12C ORA-01516報錯可能是沒有切換到PDB
一次問題:Oracle 12C DB因為主備庫server資料檔案所在路徑不一致,在主庫新增datafile後報錯:
Thu Mar 22 10:36:06 2019
Errors in file /u01/app/oracle/diag/rdbms/mesdbs/MESDB/trace/MESDB_ora_93029.trc:
ORA-10879: error signaled in parallel recovery slave
ORA-00283: recovery session canceled due to errors
ORA-01111: name for data file 87 is unknown - rename to correct file
ORA-01110: data file 87: '/u01/app/oracle/product/12.1.0/dbhome_1/dbs/UNNAMED00087'
ORA-01157: cannot identify/lock data file 87 - see DBWR trace file
ORA-01111: name for data file 87 is unknown - rename to correct file
ORA-01110: data file 87: '/u01/app/oracle/product/12.1.0/dbhome_1/dbs/UNNAMED00087'
通常這類Case(Oracle11G及之前版本),直接在standby中執行以下步驟即可:
SQL> alter system set standby_file_management='MANUAL';
SQL> alter database create datafile '/u01/app/oracle/product/12.1.0/dbhome_1/dbs/UNNAMED00087' as '/data/MES DB /qmsdb/qms_data06.dbf;
SQL> alter system set standby_file_management='AUTO';
SQL> alter database recover managed standby database using current logfile disconnect;
但在12C中執行卻報錯了:
ORA-01516 : nonexistent log file, datafile, or tempfile "/u01/app/oracle/product/12.1.0/dbhome_1/dbs/UNNAMED00087"
注: 這裡 dbs 目錄中 其實 是不存在檔案,但並不影響 , alter database create datafile XXX as XXX 這個執行僅僅只是修改資料字典( control file)
這是為什麼呢?
在文件中看到While adding datafiles in Standby CDB ORA-01516 (文件 ID 2215333.1)
Login to Standby :
==============
sql>alter system set standby_file_management='MANUAL';
Connect to PDB
SQL> alter session set container=idsp; ---原來需要先進入datafile對應的容器資料庫中執行,才可以
Session altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
5 IDSP MOUNTED
SQL>
SQL> alter database create datafile '/lc2m00/app/oracle/12cR102/dbs/UNNAMED00081' as '+DATA_IDS_DG' size 350M;
Database altered.
SQL> exit
Login to CDB in standby
SQL> alter system set standby_file_management = AUTO;
System altered.
SQL>
SQL> recover standby database;
另外12C中move,online等操作類似
在另一篇官方文件中有看到類似datafile的online操作,也
需要根據v$datafile.CON_ID 結合V$pdbs.CON_ID查出對應的PDB容器資料,再登入PDB執行操作
Although the recovery from the CDB recognizes the datafile (in example, datafile #10), when bringing the datafile online, the CDB does not recognize it.
As per the architecture of 12c CDB database, online and offline commands must be execute from the same container in which datafile resides as v$datafile and dba_data_files only have the entries of the datafiles belonging to that container.
In this case, the datafile belongs to a PDB and thus the datafile must be onlined after connecting to the PDB.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25583515/viewspace-2639350/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ADG無法切換:報錯 ORA-16467
- Appium用driver.start_activity切換Activity報錯APP
- win10開機沒有切換使用者名稱怎麼辦_win10開機沒有切換使用者如何解決Win10
- hexo切換主題後hexo-theme-landscape報錯Hexo
- RVM切換到rbenv[MacOS]Mac
- oracle12c安裝報錯[INS-32025]Oracle
- Nginx報錯:Permission denied,沒有許可權!Nginx
- git切換到指定目錄Git
- kettl連線oracle12c 可插拔資料庫pdbOracle資料庫
- win10系統切換平板模式沒有提示怎麼解決Win10模式
- Python匯入包報錯(沒有這個包)Python
- MySQL一次沒有報錯的關閉MySql
- 工作286:v-model沒有值會報錯
- java培訓沒有錯 錯的是你沒有好好學Java
- 如何從 Docker Desktop 切換到 ColimaDocker
- 從NodeJS切換到Ruby on Rails - nikodunkNodeJSAI
- oracle 跨小版本dg切換應用補丁報錯處理Oracle
- Oracle12c 針對單個pdb的全備與恢復Oracle
- oracle12c之 控制pdb中sga 與 pga 記憶體使用Oracle記憶體
- imagick使用readImage報錯 Failed to read the file 或者沒有報錯內容的解決方法AI
- 工作流從無狀態切換到有狀態的好處
- thinkpad win10大小寫切換沒有提示圖示如何解決ThinkPadWin10
- 【dgmgrl】使用dgmgrl做switchover切換報錯ORA-16501, ORA-16625等
- 沒有行動,一切為零!
- idea 2024.2切換到舊版的UIIdeaUI
- 搜狗輸入法切換到半形
- Win10怎樣切換平板模式_win10如何切換到平板模式Win10模式
- 合同管理效率太低?可能是你工具沒有選對
- 想換坑了有沒有坑位
- 啟動mysql報錯“服務沒有響應控制功能”MySql
- PDB克隆遷移轉換
- win10 edge瀏覽器切換網頁沒有聲音該怎麼辦Win10瀏覽器網頁
- 我將從VS Code切換到VS Codium
- 為什麼Discord從Go切換到Rust?GoRust
- ABP VNext從單體切換到微服務微服務
- 14. ORACLE到MYSQL上線切換方式OracleMySql
- 含有replication環境的sqlserver切換到standbySQLServer
- 程式切換(上下文切換)