摘要:《參數檔、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一致即可。