首頁 >資料庫 >Oracle >oracle怎麼修改db name

oracle怎麼修改db name

WBOY
WBOY原創
2022-05-25 18:02:163523瀏覽

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

oracle怎麼修改db name

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

oracle怎麼修改db name

整體操作步驟如下:

  • #產生重建空間語句相關的trace,以及產生資料庫實例的pfile檔

  • 關閉資料庫

  • 修改參數檔內容

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

  • 打開資料庫到open狀態

  • #查看資料庫的名稱

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

建立控制檔案過程中的參數差異

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

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

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

修改過程

現資料庫的db_name資訊如下:

oracle怎麼修改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

oracle怎麼修改db name

產生控制檔的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修改為新的名稱t​​estdb

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

oracle怎麼修改db name##在實際執行的過程中,需要將上面的reuse 替換成set ,將NORESETLOGS 修改為RESETLOGS ,實際執行過程如下:

##具體參數說明如下:oracle怎麼修改db name

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

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

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

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

推薦教學:《

Oracle影片教學

以上是oracle怎麼修改db name的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn