Oracle資料庫新增和移動控制檔案

neverinit發表於2017-08-01
配置Oracle資料庫控制檔案冗餘的操作過程:
檢視資料字典v$controlfile來獲取現有控制檔案資訊
  1. SQL> set lines 200;
  2. SQL> col name for a50;
  3. SQL> select * from v$controlfile;

  4. STATUS    NAME             IS_ BLOCK_SIZE FILE_SIZE_BLKS
  5. ------- ------------------------------ --- ---------- --------------
  6.     /data/cams/control01.ctl NO    16384         692
  7.     /data/cams/control02.ctl NO    16384         692

此處發現兩個控制檔案在一個路徑下,顯然不安全,現在對控制檔案做冗餘

檢視spfile資訊:

  1. SQL> show parameter pfile;

  2. NAME                 TYPE     VALUE
  3. ------------------------------------ ----------- ------------------------------
  4. spfile                 string     /oradata/oracle/product/11.2.0
  5.                                  /db_1/dbs/spfilecams.ora

關閉資料庫,建立pfile檔案

  1. SQL> create pfile from spfile;
  2. SQL> !ls /oradata/oracle/product/11.2.0/db_1/dbs
  3. hc_cams.dat initcams.ora init.ora lkCAMS orapwcams    snapcf_cams.f spfilecams.ora
  4. SQL> !vi /oradata/oracle/product/11.2.0/db_1/dbs/initcams.ora

  5. 修改*.control_files='/data/cams/control01.ctl','/data/cams/control02.ctl'內容為
  6. *.control_files='/data/cams/control01.ctl','/file/cams/controlfile/control02.ctl','/backup/cams/controlfile/control03.ctl'

建立路徑

  1. mkdir -p /file/cams/controlfile
  2. mkdir -p /backup/cams/controlfile

複製現有控制檔案至儲存路徑中

  1. SQL> !ls /file/cams/controlfile
  2. control02.ctl

  3. SQL> !ls /backup/cams/controlfile
  4. control03.ctl

透過pfile啟動oracle,並新建立spfile

  1. SQL> startup pfile='/oradata/oracle/product/11.2.0/db_1/dbs/initcams.ora';
  2. SQL> create spfile from pfile;
  3. SQL> shutdown immediate;
  4. SQL> startup;

總結操作過程:
(1)利用資料字典v$controlfile來獲取現有控制檔案資訊。

(2)檢視spfile所在路徑

(3)正常關閉資料庫
(4)利用spfile檔案建立pfile檔案
(5)修改pfile檔案中的CONTROL_FILES引數,修改為最新的控制檔案資訊
(6)建立新的檔案路徑,並將現有控制檔案複製到指定位置
(7)透過pfile啟動oracle,並新建立spfile
(8)關閉資料庫,利用spfile引數檔案啟動資料庫


其他說明:
(1)如果資料庫使用pfile啟動,沒有spfile,可以省略spfile和pfile切換過程,直接修改pfile即可。
(2)本文操作也可不使用spfile轉化為pfile後進行修改的操作,使用alter system set control_files = XXX scope=spfile;命令實現改變CONTROL_FILES引數資訊。
(3)修改完成後建議進行檢查,檢視v$controlfile以及伺服器上的物理控制檔案。
(4)如果操作完成後出現無用控制檔案,比如用不到原控制檔案了,建議在操作完成後刪除無用的控制檔案,避免出現系統垃圾檔案。



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

相關文章