《參數檔、controlfile、datafile header的關係》

摘要:《參數檔、controlfile、datafile header的關係》

2009/6/20

嘗試用dataguard中 standby database的datafile重建一個測試用的資料庫。

目的是不影響線上prdocution的效能;但也可以考慮自production 每日的備份中建立測試資料庫。

因為在實作過程中,遇到一些狀況,了解到上述三個檔案的親密關係。

database nomount 時會從參數檔取的接下來的db_name,這db_name要跟controlfile的database name一致,

否則在重建 controlfile時,會跳出 ORA-01504: database name 'A' does not match parameter db_name 'B'。

在create controlfile時,會檢查datafile header的database name是否與controlfile一致;

如果不一致會跳出 ORA-01161: database name 'A' in file header does not match given name of 'B'。

解決方法就是修改參數檔中的db_name、controlfile的database name與data file header一致即可。