新增控制檔案成員形成多路徑
在一般生產的環境中,重要的檔案,比如三大檔案,其中控制檔案與日誌檔案,都需要建立冗餘形成多路徑
控制檔案或者多路徑日誌檔案,這樣提高資料庫的安全性。學習環境就沒有必要這樣做,以下是模擬建立冗餘的過程:
新增控制檔案成員:
1、檢視目前的控制檔案:
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/PROD/ora_control1.ctl
/u01/app/oracle/oradata/PROD/ora_control2.ctl
2、新增兩個控制檔案,形成多路徑控制檔案:
SQL> alter system set control_files=
2 '/u01/app/oracle/oradata/PROD/ora_control1.ctl',
3 '/u01/app/oracle/oradata/PROD/ora_control2.ctl',
4 '/u01/app/oracle/fast_recovery_area/ora_control3.ctl',
5 '/u01/app/FRA/ora_control4.ctl'
6 scope = spfile;
-------因為這個修改靜態引數,所以要以scope = spfile修改,重啟資料庫後才能生效,在當前會話不生效。
System altered.
3、關閉資料庫,系統層複製控制檔案:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
4、在系統層生產跟寫在引數檔案裡控制檔案引數值相對應的檔案物件:(這個非常關鍵)
-----這一步操作,必須在關閉資料庫的狀態下進行,主要是為了關閉控制檔案,避免控制檔案寫內容。
SQL> !cp /u01/app/oracle/oradata/PROD/ora_control1.ctl /u01/app/oracle/fast_recovery_area/ora_control3.ctl
SQL> !cp /u01/app/oracle/oradata/PROD/ora_control1.ctl /u01/app/FRA/ora_control4.ctl
新增了兩個控制檔案成員,就相應地新增連個控制檔案的物件,這個還可以在系統層oracle使用者的home目錄下進行操作
如下:
[oracle@enmo ~]$ cp /u01/app/oracle/oradata/PROD/ora_control1.ctl /u01/app/oracle/fast_recovery_area/ora_control3.ctl
[oracle@enmo ~]$ cp /u01/app/oracle/oradata/PROD/ora_control1.ctl /u01/app/FRA/ora_control4.ctl
5、檢視檔案:
[oracle@enmo ~]$ cd /u01/app/oracle/fast_recovery_area/
[oracle@enmo fast_recovery_area]$ ls
ora_control3.ctl
[oracle@enmo ~]$ cd /u01/app/FRA/
[oracle@enmo FRA]$ ls
ora_control4.ctl
看到新控制檔案成員已經建立成功。
6、開啟資料庫:
SQL> startup
ORACLE instance started.
Total System Global Area 835104768 bytes
Fixed Size 2257840 bytes
Variable Size 541068368 bytes
Database Buffers 289406976 bytes
Redo Buffers 2371584 bytes
Database mounted.
Database opened.
新增成功,沒有發現錯誤,正常啟動資料庫。
7、再次檢視控制檔案:
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/PROD/ora_control1.ctl
/u01/app/oracle/oradata/PROD/ora_control2.ctl
/u01/app/oracle/fast_recovery_area/ora_control3.ctl
/u01/app/FRA/ora_control4.ctl
新的控制檔案生效。
以上在新增過程中,有一些步驟是非常關鍵的。記得在我第一次新增控制檔案成員的時候,由於先在系統層生成
控制檔案成員,再修改引數檔案的該靜態引數,最後在啟動資料庫到mount狀態的時候報錯了,原因是控制檔案
版本不一樣。因為該引數是在資料庫開啟的狀態下修改的,修改引數過程中,資料庫在不斷地往控制檔案中寫入資料庫
的修改資訊,這些修改資訊都要註冊到控制檔案中才能被資料庫識別生效。那一次的錯誤操作的教訓,讓我刻骨銘心。
所以記得兩點:
1》先修改引數再關庫。
2》先關庫再在系統複製控制檔案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31392094/viewspace-2126426/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- gcc g++ 新增標頭檔案路徑和庫檔案路徑的方法GC
- oracle11g修改控制檔案路徑Oracle
- VS Code 配置或新增 C 標頭檔案路徑
- RAC之多路徑配置
- 1.7.7. 檢視密碼檔案成員密碼
- Laravel多路由檔案,路由分組Laravel路由
- 華為多路徑配置RAC
- Keil一鍵新增.c檔案和標頭檔案路徑指令碼--可遍歷新增整個資料夾指令碼
- 關閉(隱藏)控制檯上顯示的檔案路徑
- UDEV掛載EMC多路徑盤dev
- Oracle 控制檔案Oracle
- Xcode 新增PCH檔案XCode
- 回顧Node檔案路徑
- 查詢檔案位置路徑
- 017-html檔案路徑HTML
- 檔案路徑是否正確
- 【Python】配置檔案配置路徑Python
- 2.6.4 指定控制檔案
- docker新增檔案重新打包Docker
- SpringBoot 新增本地 jar 檔案Spring BootJAR
- 【Mongodb】往分片複製集新增複製成員MongoDB
- 8.13 標頭檔案剖析:標頭檔案路徑(下)
- Oracle Linux 7.8 多路徑(Multipath)+Udev繫結磁碟OracleLinuxdev
- 專案管理之成本控制的有效途徑專案管理
- NodeJs 的幾種檔案路徑NodeJS
- 檔案路徑問題( ./ 和 ../ 和 @/ )
- Linux檔案的路徑定位-相對路徑和絕對路徑Linux
- 把 .xyz 檔案轉換成 .ply 檔案
- win10怎麼新增信任檔案 新增Win10信任檔案的方法Win10
- win10 onenote如何修改檔案路徑_win10 onenote怎麼修改檔案路徑Win10
- 4.12 st_size、st_blksize和st_blocks成員-檔案尺寸BloC
- 新增speak成員方法,輸出我是一個好人
- IntelliJ IDEA 新增本地xsd檔案IntelliJIdea
- 用檔案新增Swap分割槽
- VSCode中新增vue檔案模板VSCodeVue
- 專案小組成員介紹
- Linux配置和管理裝置對映多路徑multipathLinux
- LINUX 多路徑對映Multipath與正規表示式Linux
- 批量修改vsphere共享儲存多路徑選擇策略