修改方法:1、將「pfile.ora」引數檔案中的「db_name」值修改為指定值並儲存;2、將原環境變數中的sid修改為新的「db_name」值;3、重新啟動資料庫後,使用resetlogs方式開啟資料即可完成修改。
本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。
整體操作步驟如下:
生成重建空間語句相關的trace,以及生成資料庫範例的pfile檔案
關閉資料庫
修改引數檔案內容
執行建立控制檔案的語句並啟動資料庫到mount
開啟資料庫到open狀態
檢視資料庫的名稱
修改db_name過程中涉及到的隱含內容
建立控制檔案過程中的引數區別
redolog損壞的情況下,恢復資料庫的方法
物理修改資料庫檔案位置之後,快速的恢復資料庫的方法
上面內容只做修改名稱演示,其他場景請參考另外技術文章。
現資料庫的db_name資訊如下:
1、生成引數檔案:
SQL> create pfile='/home/oracle/pfile.ora' from spfile; File created.
將生成出來引數檔案(pfile.ora)的db_name 修改為 testdb
*.db_name='testdb' *.db_recovery_file_dest='+FRA' *.db_recovery_file_dest_size=4621074432 *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=testdbXDB)'
將修改完的pfile檔案生成為新的spfile
生成控制檔案的trace檔案
為session加上標記,方便查詢trace檔案
alter session set tracefile_identifier='bak_control';
將當前controlfile檔案的建立語句放到了trace檔案中
alter database backup controlfile to trace;
獲得第二步中生成的trace檔案的路徑
select tracefile from v$process where addr in (select paddr from v$session where sid in (select sid from v$mystat));
關閉資料庫
shutdown immediate;
2、修改引數檔案的內容和作業系統環境變數
將原來環境變數中的SID修改為新的名稱testdb
使用建立控制檔案的語句啟動資料庫
實際執行的過程中,需要將上面的reuse 替換成 set ,將NORESETLOGS 修改為 RESETLOGS ,實際執行過程如下:
具體引數說明如下:
| 引數名稱 | 引數說明 | | ------ | ------ | | set | 一般是更改資料庫名字 | | reuse | 重新建立控制檔案 | | noresetlogs | 開啟資料庫的時候不用resetlogs | | resetlogs | 開啟資料庫的時候要求resetlogs |
3、開啟資料庫到open狀態
必須用resetlogs 的方式開啟資料,否則報錯。
SQL> alter database open; alter database open * ERROR at line 1: ORA-01589: must use RESETLOGS or NORESETLOGS option for database open SQL> SQL> SQL> alter database open resetlogs; Database altered. SQL>
結果驗證
過程總結
建議避免在生產環境使用該方法修改資料庫名稱
使用場景為不同的業務需要不同的環境名稱,做完異機恢復之後,按照環境要求修改相應的名稱。
整個過程難度不大,但是需細心,尤其是引數檔案的修改和控制檔案的重新生成
以上就是oracle怎麼修改db name的詳細內容,更多請關注TW511.COM其它相關文章!