【ASK_ORACLE】Oracle如何重新命名PDB

Attack_on_Jager發表於2022-11-07

實驗環境

搭建平臺:VMware Workstation

OS:OL 7.5

DB:Oracle 12.2.0.1


PDB重新命名步驟

1. 把PDB啟動到restricted模式,防止新連線進入

SQL> alter pluggable database PDBTEST close;

SQL> alter pluggable database PDBTEST open restricted;

檢查是否成功:

SQL> select name, open_mode, restricted from v$pdbs;

 

2. 重新命名PDB

SQL> alter session set container=PDBTEST;  --先連線到PDB

SQL> alter pluggable database rename global_name to PDBNEW;  --重新命名為PDBNEW


3. 正常重啟PDB( 必須重啟!

SQL> alter pluggable database close immediate;

SQL> alter pluggable database open;

再次檢查是否關閉restricted模式

SQL> select name, open_mode, restricted from v$pdbs;

 

4. 移動PDB的資料檔案到新目錄

(1)先建立以新名稱命名的PDB目錄:

$ mkdir /u01/app/oracle/oradata/CDB/pdbnew

(2)再進行線上move操作:

SQL> alter database move datafile '/u01/app/oracle/oradata/CDB/pdbtest/test01.dbf' to '/u01/app/oracle/oradata/CDB/pdbnew/test01.dbf';

注:

(1) 雖然PDB已經改名,但是對應的目錄不會被重新命名,如果需要命名統一規範化,就 需要手動建立資料檔案目錄並move,但 臨時表空間需要重建!重建方式:

SQL> alter database tempfile '/u01/app/oracle/oradata/CDB/pdbtest/temp01.dbf' drop including datafiles;

SQL> alter tablespace TEMP add tempfile '/u01/app/oracle/oradata/CDB/pdbnew/temp01.dbf' size 1024M reuse;

 

(2) 如果安裝時勾選了OMF管理方式,有兩種方式move

1)常用方式

l  關閉資料庫

l  在作業系統進行資料檔案的mv操作

l  必須啟動到mount狀態

l  執行rman中常用的rename操作:

   alter database rename file '<oldname>' TO '<newname>';

l  Open資料庫

 

2)在表空間層進行move

l  Offline表空間

l  在作業系統進行 資料檔案的mv操作

l  執行表空間檔案的rename操作:

   alter tablespace <tbsname> rename datafile '<oldname>' TO '<newname>';

l  Online表空間


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2922212/,如需轉載,請註明出處,否則將追究法律責任。

相關文章