oracle怎麼修改db name

2022-05-25 22:00:49

修改方法:1、將「pfile.ora」引數檔案中的「db_name」值修改為指定值並儲存;2、將原環境變數中的sid修改為新的「db_name」值;3、重新啟動資料庫後,使用resetlogs方式開啟資料即可完成修改。

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle怎麼修改db name

整體操作步驟如下:

  • 生成重建空間語句相關的trace,以及生成資料庫範例的pfile檔案

  • 關閉資料庫

  • 修改引數檔案內容

  • 執行建立控制檔案的語句並啟動資料庫到mount

  • 開啟資料庫到open狀態

  • 檢視資料庫的名稱

修改db_name過程中涉及到的隱含內容

建立控制檔案過程中的引數區別

redolog損壞的情況下,恢復資料庫的方法

物理修改資料庫檔案位置之後,快速的恢復資料庫的方法

上面內容只做修改名稱演示,其他場景請參考另外技術文章。

修改過程

現資料庫的db_name資訊如下:

60.png

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

61.png

生成控制檔案的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

使用建立控制檔案的語句啟動資料庫

62.png

實際執行的過程中,需要將上面的reuse 替換成 set ,將NORESETLOGS 修改為 RESETLOGS ,實際執行過程如下:

63.png

具體引數說明如下:

| 引數名稱 | 引數說明 | | ------ | ------ | | 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>

結果驗證

64.png

過程總結

建議避免在生產環境使用該方法修改資料庫名稱

使用場景為不同的業務需要不同的環境名稱,做完異機恢復之後,按照環境要求修改相應的名稱。

整個過程難度不大,但是需細心,尤其是引數檔案的修改和控制檔案的重新生成

以上就是oracle怎麼修改db name的詳細內容,更多請關注TW511.COM其它相關文章!