備份失敗疑難排解
資料庫備份可能會因為各種原因而失敗。通常,備份會失敗,因為資料庫主機無法存取物件存放區,或者主機上發生問題或資料庫組態。
本文包含的資訊可協助您判斷失敗原因並修正問題。系統會根據錯誤情況,將資訊組織成數個區段。
如果您已經知道原因,可以使用建議的解決方案跳至主題。否則,請使用識別失敗原因主題開始作業。
本文涵蓋下列主題:
秘訣:
您也可以建立序列主控台連線,以在單一使用者模式對系統進行疑難排解。如需在 OCI 主控台中建立序列主控台連線的相關資訊,請參閱管理資料庫系統的序列主控台連線。相關主題
識別失敗原因
在 OCI 主控台中,失敗的資料庫備份會顯示失敗或備份進行中或建立中狀態的擱置狀態。如果錯誤訊息包含的資訊不足以指向解決方案,您可以使用資料庫 CLI 與日誌檔來收集更多資料。然後,如需解決方案,請參閱本主題中適用的章節。
涵蓋的主題如下:
識別備份失敗的根本原因
-
以 root 使用者身分登入主機,然後瀏覽至
/opt/oracle/dcs/bin/
。 -
決定在資料庫上執行的作業順序。
dbcli list-jobs | grep -i <dbname>
請注意列出的最後一個工作 ID,其狀態不是成功。
-
使用上一個步驟所記下的工作 ID,使用下列命令檢查該工作的詳細資訊:
dbcli describe-job -i <job_ID> -j
一般而言,執行此命令足以透露失敗的根本原因。
-
如果需要更多資訊,請檢閱
/opt/oracle/dcs/log/dcs-agent.log
檔案。您可以使用工作報告在步驟 2 中傳回的時間戳記,在此檔案中找到工作 ID。
-
如果問題詳細資訊建議 RMAN 問題,請複查下列目錄中的 RMAN 日誌。
/opt/oracle/dcs/log/<hostname>/rman/bkup/<db_unique_name>/rman_backup/<yyyy-mm-dd>
附註:
如果資料庫失敗發生在雙節點 RAC 資料庫上,請在兩個節點上執行步驟 3 與 4。資料庫服務代理程式問題
您的 OCI 資料庫使用代理程式架構,可讓您透過雲端平台管理資料庫。有時候,如果 dcsagent 程式的狀態為停止 / 等待以解決備份失敗,您可能需要重新啟動該程式。
涵蓋的主題如下:
重新啟動資料庫服務代理程式
附註:
使用 OL6 時,請使用initctl
而非 systemctl
。
-
從命令提示中,檢查代理程式的狀態:
systemctl status initdcsagent
-
如果代理程式處於停止 / 等待狀態,請嘗試重新啟動代理程式:
systemctl start initdcsagent
-
再次檢查代理程式的狀態,以確認代理程式的狀態為啟動 / 執行中:
systemctl status initdcsagent
Oracle Clusterware 問題
Oracle Clusterware 可讓伺服器彼此通訊,使其成為集體單位。有時候您可能需要重新啟動「叢集軟體」程式來解決備份失敗。
資料庫主機上的一或多個下列條件可能會導致備份失敗:
重新啟動 Oracle Clusterware
-
從命令提示檢查 Oracle Clusterware 的狀態:
crsctl check crs
crsctl stat res -t
-
如果 Oracle Clusterware 未連線,請嘗試重新啟動程式:
crsctl start crs
-
檢查 Oracle Clusterware 的狀態,確認它已上線:
crsctl check crs
物件存放區連線問題
若要將您的資料庫備份至 OCI 物件儲存,主機必須能夠連線至適用的 Swift 端點。您可以使用 Swift 使用者測試此連線。
涵蓋的主題如下:
確定您的資料庫主機可以連線至物件存放區
- 在您的租用戶中建立 Swift 使用者。如需詳細資訊,請參閱管理使用者證明資料中的使用認證記號。
-
使用您在上一個步驟中建立的使用者,使用下列命令驗證主機可以存取物件存放區。
curl -v -X HEAD -u <user_ID>:'<auth_token>' https://swiftobjectstorage.<region_name>.oraclecloud.com/v1/<object_storage_namespace>
- 如需有關所要使用正確區域的詳細資訊,請參閱物件儲存常見問題。
- 如需有關物件儲存命名空間的詳細資訊,請參閱瞭解物件儲存命名空間。
- 如果您無法連線物件存放區,請參閱使用主控台備份資料庫,瞭解如何設定物件存放區連線。
主機問題
涵蓋的主題如下:
資料庫主機上的一或多個下列條件可能會導致備份失敗:
Oracle 設定檔中的互動式命令
如果將互動式命令 (例如 oraenv
) 或任何可能傳回錯誤或警告訊息的命令新增至網格 oracle 使用者的 .bash_profile
檔案,則自動備份之類的資料庫服務作業可能會中斷且無法完成。檢查 .bash_profile
檔案中是否有這些指令,並加以移除。
檔案系統已完整
備份作業需要主機檔案系統上 /u01
目錄中的空間。使用主機上的 df -h
命令來檢查可供備份的空間。如果檔案系統的空間不足,您可以移除舊的日誌或追蹤檔來釋出空間。
Oracle Database Cloud Backup Module 的版本不正確
您的系統可能沒有必要的備份模組版本 (opc_installer.jar)。請參閱無法在您的資料庫系統中使用受管理備份以瞭解此已知問題。若要修正此問題,您可以依照該區段中的程序進行,或是使用最新的組合更新來更新資料庫系統和資料庫。
網站設定檔檔案的變更 (glogin.sql)
自訂網站設定檔檔案 ($ORACLE_HOME/sqlplus/admin/glogin.sql
) 可能會導致 OCI 中的受管理備份失敗。請參閱 SQL*Plus 組態。特別是互動式命令可能會導致備份失敗。Oracle 建議您不要修改 OCI 中代管之資料庫的這個檔案。
資料庫問題
不正確的資料庫狀態或組態可能會導致失敗的備份。
涵蓋的主題如下:
備份時未執行資料庫
備份進行時,資料庫必須是作用中且在執行中 (最好是在所有節點上)。
檢查資料庫是否作用中且在執行中
使用下列命令檢查資料庫的狀態,並確保解決任何可能使資料庫處於不適當狀態的問題:
srvctl status database -d <db_unique_name> -verbose
系統會傳回包含資料庫實例狀態的訊息。執行處理狀態必須是開啟,備份才能成功。如果資料庫未執行,請使用下列命令啟動資料庫:
srvctl start database -d <db_unique_name> -o open
如果資料庫已掛載但狀態不是開啟,請使用下列命令來存取 SQL*Plus 命令提示,並將狀態設為開啟:
sqlplus / as sysdba
alter database open;
存檔模式設為 NOARCHIVELOG
啟動設定新資料庫時,預設會將存檔模式設為 ARCHIVELOG
。這是備份作業的必要存檔模式。檢查資料庫的存檔模式設定,並將它變更為 ARCHIVELOG
(如果適用)。
檢查並設定存檔模式
開啟 SQL*Plus 命令提示並輸入下列命令:
select log_mode from v$database;
如果您需要將存檔模式設為 ARCHIVELOG
,請以掛載狀態 (而非開啟狀態) 啟動資料庫,然後在 SQL*Plus 命令提示中使用下列命令:
alter database archivelog;
確認 db_recovery_file_dest
參數指向 +RECO
,且 log_archive_dest_1
參數設為 USE_DB_RECOVERY_FILE_DEST
。
若為 RAC 資料庫,一個執行處理在啟用存檔日誌模式時必須處於掛載狀態。若要啟用 RAC 資料庫的存檔日誌模式,請執行下列步驟:
-
關閉所有資料庫執行處理。
srvctl stop database -d
-
啟動掛載狀態的其中一個資料庫執行處理。
srvctl start instance -d <db_unique_name> -i <instance_name> -o mount
-
存取 SQL*Plus 命令提示字元。
sqlplus / as sysdba
-
啟用存檔日誌模式並結束。
alter database archivelog;
exit;
-
停止資料庫。
srvctl stop instance -d <db_unique_name> -i <instance_name>
-
重新啟動所有資料庫執行處理。
srvctl start database -d <db_unqiue_name>
-
在 SQL*Plus 命令提示符號處,確認存檔模式已設為
ARCHIVELOG
。select log_mode from v$database;
停滯的資料庫存檔器處理作業和備份失敗
資料庫執行處理若有停滯的存檔器處理作業,備份可能會失敗。例如,當瞬間復原區域 (FRA) 已滿時,就會發生這種情況。您可以使用下列指令來檢查此狀況。
srvctl status database -db <db_unique_name> -v
如果命令傳回下列輸出,您必須先解決停滯存檔器處理作業問題,才能順利備份:
Instance <instance_identifier> is running on node *<node_identifier>. Instance status: Stuck Archiver
請參閱 ORA-00257:存檔器錯誤 (文件 ID 2014425.1),瞭解解決停滯存檔器處理作業的資訊。
解析停滯處理作業之後,命令應該傳回下列輸出:
Instance <instance_identifier> is running on node *<node_identifier>. Instance status: Open
如果在解決裝置或資源已滿或無法使用之後,執行處理狀態不會變更,請嘗試下列其中一個解決方法:
- 使用
srvctl
命令重新啟動資料庫,以更新叢集軟體中的資料庫狀態 - 將資料庫升級至最新的修正程式集層次
暫時表格空間錯誤
如果資料庫上的固定表格統計資料不是最新的,備份可能會因參照 dcs-agent.log
檔案中之暫時表格空間的錯誤而失敗。舉例而言:
select status from v$rman_status where COMMAND_ID=<backup_id>
輸出:
ERROR at line 1:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
依照下列方式收集您的固定表格靜態以解決此問題。
conn / as sysdba
exec dbms_stats.gather_fixed_objects_stats();
RMAN 組態和備份失敗
編輯某些 RMAN 組態參數可能會導致 OCI 的備份失敗。如果要檢查您的 RMAN 組態,請在 RMAN 命令行提示中使用 show all
命令。
請參閱下列參數清單,瞭解不應更改 OCI 中資料庫之組態設定值的詳細資訊。
不應更改的 RMAN 組態設定值
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 30 DAYS;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 5 BACKUP TYPE TO COMPRESSED BACKUPSET;
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2 G;
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' MAXPIECESIZE 2 G FORMAT '%d_%I_%U_%T_%t' PARMS
'SBT_LIBRARY=/opt/oracle/dcs/commonstore/pkgrepos/oss/odbcs/libopc.so
ENV=(OPC_PFILE=/opt/oracle/dcs/commonstore/objectstore/opc_pfile/1578318329/opc_tiger_iad3c8.ora)';
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 1 TIMES TO 'SBT_TAPE';
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2 G;
CONFIGURE ENCRYPTION FOR DATABASE ON;
RMAN 保留原則與備份失敗
RMAN 保留原則組態可以是備份失敗的來源。使用 REDUNDANCY 保留原則組態 (而非 RECOVERY WINDOW 原則) 可能會導致備份失敗。請務必使用 RECOVERY WINDOW OF 30 DAYS 組態。
設定 RMAN 保留原則設定
-
使用下列命令尋找資料庫 ID:
dbcli list-databases
-
使用下列命令尋找資料庫的
BackupConfigId
值:dbcli describe-database -i <database_id>
-
將保留原則組態更新為
RECOVERY WINDOW OF 30 DAYS
:dbcli update-backupconfig -i <backup_config_id> --recoverywindow 30
遺失物件存放區公事包檔案和備份失敗
遺失物件存放區公事包檔案時,RMAN 備份會失敗。必須要有公事包檔案,才能連線至物件存放區。
確認物件存放區公事包檔案存在且具有正確的權限
-
使用下列命令尋找資料庫 ID:
dbcli list-databases
-
使用下列命令尋找資料庫的
BackupConfigId
值:dbcli describe-database -i <database_id>
-
使用下列命令尋找資料庫的
BackupLocation
值:dbcli describe-backupconfig <backup_config_id>
-
使用下列命令尋找備份組態參數檔 (
opc_<backup_location_value>_BC.ora
) 的檔案路徑:locate opc_<backup_location_value>_BC.ora
舉例而言:
locate opc_b9naijWMAXzi9example_BC.ora
輸出:
/opt/oracle/dcs/commonstore/objectstore/opc_pfile/13aef284-9d6b-4eb6-8751-2988a9example/opc_b9naijWMAXzi9example_BC.ora
-
檢查儲存在
OPC_WALLET
參數中的值,以尋找備份組態參數檔中公事包檔案的檔案路徑。若要這麼做,請瀏覽至包含備份組態參數檔的目錄,然後使用下列cat
命令:cat <backup_config_parameter_file>
舉例而言:
cat opc_b9naijWMAXzi9example_BC.ora
輸出:
OPC_HOST=https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/dbbackupiad OPC_WALLET='LOCATION=file:/opt/oracle/dcs/commonstore/objectstore/wallets/13aef284-9d6b-4eb6-8751-2988aexample CREDENTIAL_ALIAS=alias_opc' OPC_CONTAINER=b9naijWMAXzi9example
-
確認
cwallet.sso
檔案存在於OPC_WALLET
參數中指定的目錄中,並確認檔案的權限正確。檔案權限的八進位值應為 "600" (-rw-------
)。使用以下命令:ls -ltr /opt/oracle/dcs/commonstore/objectstore/wallets/<backup_config_id>
舉例而言:
ls -ltr /opt/oracle/dcs/commonstore/objectstore/wallets/13aef284-9d6b-4eb6-8751-2988aexample
輸出:
total 4 -rw------- 1 oracle oinstall 0 Apr 20 06:45 cwallet.sso.lck -rw------- 1 oracle oinstall 1941 Apr 20 06:45 cwallet.sso
TDE 公事包問題
涵蓋的主題如下:
TDE 公事包位置規格不正確
若要讓備份作業能夠運作,$ORACLE_HOME/network/admin/sqlnet.ora
檔案必須包含格式如下的 ENCRYPTION_WALLET_LOCATION 參數:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
附註:
在此公事包位置項目中,$ORACLE_UNQNAME
是環境變數,不應以實際值取代。
檢查 TDE 公事包位置規格
使用 cat
命令檢查 TDE 公事包位置設定。舉例而言:
cat $ORACLE_HOME/network/admin/sqlnet.ora
輸出:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
使用 SQL*Plus 啟動資料庫時,未設定 ORACLE_UNQNAME
環境變數
如果資料庫是使用 SQL*Plus 啟動,但未設定 ORACLE_UNQNAME
環境變數,公事包便無法正確開啟。
若要修正問題,請使用 srvctl
公用程式啟動資料庫:
srvctl start database -d <db_unique_name>
可插拔資料庫新增的主要加密金鑰不正確
在支援 PDB 層次金鑰存放區的 Oracle Database 版本多用戶環境中,每個 PDB 都有自己的主要加密金鑰。此加密金鑰儲存在所有容器使用的單一金鑰存放區。建立或插入新 PDB 之後,您必須為其建立並啟用主要加密金鑰。如果不這麼做,v$encryption_wallet
視觀表中的 STATUS
資料欄會顯示值 OPEN_NO_MASTER_KEY
。
若要檢查主要加密金鑰狀態及建立主要金鑰,請執行下列動作:
-
複查
v$encryption_wallet
視觀表中的STATUS
資料欄,如下列範例所示:alter session set container=pdb2;
select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;
輸出:
WRL_TYPE WRL_PARAMETER STATUS WALLET_TYPE --------- ------------------------------------------------------- ------------------ ----------- FILE /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ OPEN_NO_MASTER_KEY AUTOLOGIN
-
確認 PDB 處於 READ WRITE 開啟模式且未受到限制,如下列範例所示:
show pdbs
輸出:
CON_ID CON_NAME OPEN MODE RESTRICTED ------ ---------- ----------- ----------- 2 PDB$SEED READ ONLY NO 3 PDB1 READ WRITE NO 4 PDB2 READ WRITE NO
PDB 無法以限制模式開啟 (
RESTRICTED
資料欄必須顯示NO
)。如果 PDB 目前處於限制模式,請先複查 PDB_PLUG_IN_VIOLATIONS 視觀表中的資訊並解決問題,再繼續進行。如需有關 PDB_PLUG_IN_VIOLATIONS 視觀表和限制狀態的詳細資訊,請複查您 Oracle Database 版本之可插拔資料庫的文件。 -
執行下列
DBCLI
指令,將狀態變更為OPEN
:sudo su –
dbcli list-database
dbcli update-tdekey -i <database_ID> -n <PDB_name> -p
顯示的
update-tdekey
命令將會提示您輸入管理員密碼。 -
查詢
v$encryption_wallet
視觀表,確認公事包的狀態已從 OPEN_NO_MASTER_KEY 變更為 OPEN,如步驟 1 所示。
檢查與 TDE 公事包相關的組態
有數個與 TDE 公事包相關的組態參數可能會導致備份失敗。
-
使用下列命令檢查環境的資料庫唯一名稱參數 (ORACLE_UNQNAME) 是否正確設定:
srvctl getenv database -d <db_unique_name>
舉例而言:
srvctl getenv database -d orclbkp_iadxyz
輸出:
orclbkp_iadxyz: ORACLE_UNQNAME=orclbkp_iadxyz TZ=UTC
-
檢查您的
sqlnet.ora
設定值,確認檔案的 ENCRYPTION_WALLET_LOCATION 參數具有正確的 DIRECTORY 值。使用以下命令:cat $ORACLE_HOME/network/admin/sqlnet.ora
舉例而言:
cat $ORACLE_HOME/network/admin/sqlnet.ora
輸出:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME)))
-
檢查
v$encryption_wallet
檢視,確認公事包狀態為開啟,而公事包類型為自動登入。舉例而言:select status, wrl_parameter,wallet_type from v$encryption_wallet;
輸出:
STATUS WRL_PARAMETER WALLET_TYPE ------- -------------------------------------------------------- ------------ OPEN /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ AUTOLOGIN
對於可插拔資料庫 (PDB),請確定先切換至適當的容器,再查詢
v$encryption_wallet
視觀表。舉例而言:sqlplus / as sysdba
alter session set container=pdb1;
select WRL_TYPE,WRL_PARAMETER,STATUS,WALLET_TYPE from v$encryption_wallet;
輸出:
WRL_TYPE WRL_PARAMETER STATUS WALLET_TYPE --------- ------------------------------------------------------ ------- ------------ FILE /opt/oracle/dcs/commonstore/wallets/tde/tiger_iad3c8/ OPEN AUTOLOGIN
遺漏 TDE 公事包檔案
TDE 公事包檔案 (ewallet.p12
) 若遺漏備份或檔案系統權限不相容或擁有權,可能會導致備份失敗。請檢查檔案,如下列範例所示:
ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME/ewallet.p12
輸出:
-rwx------ 1 oracle oinstall 5680 Apr 18 13:09 /opt/oracle/dcs/commonstore/wallets/tde/orclbkp_iadxzy/ewallet.p12
TDE 公事包檔案應具有八進位值 "700" (-rwx------
) 的檔案權限,且此檔案的擁有者應為 oinstall
作業系統群組的一部分。
遺漏自動登入公事包檔案
自動登入公事包檔案 (cwallet.sso
) 若遺漏備份,或檔案系統權限或擁有權不相容,就會導致備份失敗。請檢查檔案,如下列範例所示:
ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/$ORACLE_UNQNAME/cwallet.sso
輸出:
-rwx------ 1 oracle oinstall 5725 Apr 18 13:09 /opt/oracle/dcs/commonstore/wallets/tde/orclbkp_iadxyz/cwallet.sso
自動登入公事包檔案應具有八進位值 "700" (-rwx------
) 的檔案權限,且此檔案的擁有者應為 oinstall
作業系統群組的一部分。
備份失敗的其他原因
卸載的 Commonstore 掛載點
必須掛載掛載點 /opt/oracle/dcs/commonstore
,否則備份將會失敗。
檢查 Commonstore 掛載點
確認已掛載掛載點 /opt/oracle/dcs/commonstore
,如下列範例所示:
srvctl config filesystem -volume commonstore -diskgroup data
輸出:
Volume device: /dev/asm/commonstore-5
Diskgroup name: data
Volume name: commonstore
Canonical volume device: /dev/asm/commonstore-5
Accelerator volume devices:
Mountpoint path: /opt/oracle/dcs/commonstore
Mount point owner: oracle
Mount users:
Type: ACFS
確認 ora.data.commonstore.acfs
為線上狀態
-
ora.data.commonstore.acfs
的狀態必須是線上狀態,否則備份將會失敗。確認,如下列範例所示:crsctl stat resource ora.data.commonstore.acfs -v
輸出:
NAME=ora.data.commonstore.acfs TYPE=ora.acfs.type LAST_SERVER=orcl STATE=OFFLINE TARGET=OFFLINE ... STATE_DETAILS=admin unmounted /opt/oracle/dcs/commonstore ...
-
列出
commonstore
目錄的內容,以確認已掛載ls -ltr /opt/oracle/dcs/commonstore
-
如果 STATE_DETAILS 值為
unmounted
,請如下列範例所示掛載檔案系統:srvctl start filesystem -volume commonstore -diskgroup data
-
確認變更成功,如下列範例所示:
crsctl stat resource ora.data.commonstore.acfs -v
輸出:
NAME=ora.data.commonstore.acfs TYPE=ora.acfs.type LAST_SERVER=orcl STATE=ONLINE on orcl TARGET=ONLINE CARDINALITY_ID=ONLINE ... STATE_DETAILS=mounted on /opt/oracle/dcs/commonstore
-
列出
commonstore
目錄的內容以確認是否已掛載,如下列範例所示:ls -ltr /opt/oracle/dcs/commonstore
輸出:
total 220 drwx------ 2 root root 65536 Apr 18 10:50 lost+found drwx------ 3 oracle oinstall 20480 Apr 18 11:02 wallets drwxr-xr-x 3 root root 20480 Apr 20 06:41 pkgrepos drwxr-xr-x 4 oracle oinstall 20480 Apr 20 06:41 objectstore
資料庫未正確註冊
如果資料庫未在 dcs-agent
註冊,資料庫備份就會失敗。如果您手動將資料庫移轉至 OCI 且未執行 dbcli register-database
命令,就會發生此情況。
若要檢查資料庫是否已正確註冊,請複查執行 srvctl config database
命令和 dbcli list-databases
命令所傳回的資訊。如果任一命令未傳回資料庫記錄,請洽詢 Oracle Support Services。
如需如何註冊資料庫的指示,請參閱下列主題:
- 在資料庫系統上註冊資料庫,從 OCI Classic 物件存放區復原資料庫
- Oracle Database CLI Reference 中的 Database Commands
取得其他說明
如果您無法使用本主題中的資訊來解決問題,請遵循以下程序來收集相關的資料庫和診斷資訊。收集這些資訊之後,請聯絡 Oracle Support 。
收集用於問題報表的資料庫資訊
請使用下列命令來收集資料庫的詳細資訊。記錄每個命令的輸出以供參考:
dbcli list-databases
dbcli describe-database -i <database_id>
dbcli describe-component
收集失敗工作的診斷資訊
-
以 root 使用者身分登入主機,然後瀏覽至
/opt/oracle/dcs/bin/
目錄。 -
執行下列兩個命令以產生失敗工作的相關資訊:
dbcli list-jobs
dbcli describe-job -i <job_ID> -j
第二個指令中的 <job_ID> 應該是第一個指令所報告之最新失敗工作的 ID。
-
執行診斷收集器命令檔,以建立包含 Oracle Support Services 診斷資訊的壓縮檔。
diagcollector.py
此指令會在
/tmp
目錄中建立名為diagLogs -<timestamp>.zip
的檔案。
收集 DCS 代理程式日誌檔
若要收集 DCS 代理程式日誌檔,請執行下列動作:
- 以 opc 使用者身分登入。
-
執行下列命令:
sudo /opt/oracle/dcs/bin/diagcollector.py
系統會傳回訊息,指出代理程式日誌可在指定目錄的 zip 檔案中使用。舉例而言:
Logs are being collected to: /tmp/dcsdiag/diagLogs-1234567890.zip
收集 TDE 組態詳細資訊
- 執行
srvctl getenv database -d <db_unique_name>
指令並記錄輸出以供參考。 -
記錄檢視
v$encryption_wallet
的輸出。舉例而言:select status, wrl_parameter,wallet_type from v$encryption_wallet;
輸出:
STATUS WRL_PARAMETER WALLET_TYPE -------- ------------------------------------------------------- --------- OPEN /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/ AUTOLOGIN
-
記錄
ls -ltr <wrl_parameter>
command.For 範例輸出的輸出:ls -ltr /opt/oracle/dcs/commonstore/wallets/tde/example_iadxyz/
輸出:
total 28 -rw----- 1 oracle asmadmin 2400 May 2 09:42 ewallet_2018050209420381_defaultTag.p12 -rw----- 1 oracle asmadmin 5680 May 2 09:42 ewallet.p12 -rw----- 1 oracle asmadmin 5723 May 2 09:42 cwallet.sso
收集 RMAN 備份報表檔案
使用下列命令產生「RMAN 備份報表檔案」:
dbcli create-rmanbackupreport -i <db_id> -w detailed -rn <report_name>
舉例而言:
dbcli create-rmanbackupreport -i 57fvwxyz-9dc4-45d3-876b-5f850example -w detailed -rn bkpreport1
使用 dbcli describe-rmanbackupreport -in <report_name>
命令找出報表檔案。報表的位置是在輸出中指定。舉例而言:
dbcli describe-rmanbackupreport -in bkpreport1
輸出:
Backup Report details
----------------------------------------------------------------
ID: b55vwxyz-c49f-4af3-a956-acccdexample
Report Type: detailed
Location: Node patchtst: /opt/oracle/dcs/log/patchtst/rman/bkup/example_iadxyz/rman_list_backup_detail
/2018-05-02/rman_list_backup_detail_2018-05-02_11-46-51.0359.log
Database ID: 57fvwxyz-9dc4-45d3-876b-5f850example
CreatedTime: May 2, 2018 11:46:38 AM UTC