一、控制檔案(control file):是乙個較小的二進位制檔案,用於記錄與維護資料庫的物理結構;
1.當啟動例程並開啟資料庫時,oracle會根據初始化引數control files 在例程和資料庫之間建立關聯.裝載資料庫(mount狀態)時,oracle會安裝初始化引數 control_files定位並開啟控制檔案和重做日誌。
2.控制檔案主要記載資訊:
資料庫名稱和位置、重做日誌名稱和位置、表空間名稱、當前日誌序列號、資料庫建立日期、檢查點資訊、日誌歷史資訊、rman資訊
3.控制檔案位置:
select name from v$controlfile;
4.控制檔案主要由永久引數和rman資訊組成
maxinstances:用於指定可以同時訪問資料庫的最大例程個數;
maxdatafiles:用於指定oracle資料庫的最大資料檔案個數;
maxlogfiles:用於指定oracle資料庫的最大日誌組個數;
maxlogmembers:用於指定每個日誌組的最大日誌成員個數;
maxloghistory:用於指定控制檔案可記載日誌歷史的最大個數;
5.使用rman執行備份操作時,rman備份資訊會被記載到控制檔案中,
初始化引數control_file_record_keep_time指定了rman備份資訊在控制檔案中的保留時間,預設值為7;
6.建立乙個控制檔案
1):獲取資料檔案和重做日誌檔案
資料檔案: select name from v$datafile;
日誌檔案:select member from v$logfile;
2):關閉資料庫: shutdown immediate
3) :備份所有的資料檔案和重做日誌
4) : 啟動資料庫: sartup nomount
5):建立控制檔案
create controlfile reuse database database_name noresetlogs|resetlogs noarchivelog|archivelog
reuse database database_name:如果database_name資料庫存在,使用database_name資料庫,如果不存在重新建立資料database_name
noresetlogs|resetlogs:指定仍然使用原有重做日誌,如果不希望使用原有重做日誌,可以指定resetlogs選項
noarchivelog|archivelog:日誌不歸檔/日誌歸檔
6):修改control_file引數 使其指向新建的控制檔案 如果修改了資料庫名稱還需修改db_name引數
alter system set control_files='controlfile_name1'...scope=spfile;
7):如果需要恢復資料庫的話需要執行
alter database open
8):使用了resetlogs 則執行 alter database open resetlogs;
7.控制檔案備份(複製控制檔案)
alter database backup controlfile to '/data/oracle/control_01'
8.將控制檔案備份為可讀檔案
alter database backup controlfile to trace;
9.控制檔案的恢復
如果控制檔案被破壞,但儲存控制檔案的目錄仍然可以訪問,並且存在控制檔案副本,
則可以關閉資料庫例項,然後使用作業系統將控制檔案副本複製到控制檔案目錄下,覆蓋被損壞的控制檔案,然後重啟資料庫;
10.刪除控制檔案
1)關閉資料庫 shutdown immediate
2)編輯初始化引數control_files.使其不再包含要刪除的控制檔案的名稱;
3)重啟資料庫 sartup nomount
11.檢視控制檔案資訊
與控制檔案有關的資料字典檢視
v$database //顯示控制檔案描述的資料庫資訊
v$controlfile //顯示控制檔案的名稱和狀態資訊
v$controlfile_record_section //顯示控制檔案各個記錄的資訊
v$parameter //顯示初始化引數controlfile_files中的控制檔名稱
oracle控制檔案
nomount時可以用show parameter control files檢視。而此時yon用select from v controlfile則沒有任何資訊。nomount狀態只是通過引數檔案來找到控制檔案。進入mount後可以用select from v controlfile檢視。控制檔案...
oracle控制檔案
控制檔案是乙個比較小的二進位制檔案,記錄了物理資料庫的當前狀態 每乙個控制檔案只屬於乙個資料庫,資料庫可以有多個控制檔案 處於安全考慮,一般多幾個就相當於多了幾個備份 但是乙個控制檔案不能對應多個資料庫 資料庫處於開啟狀態,伺服器會隨時修改控制檔案的內容 任何使用者都不能修改控制檔案的資料。獲取控制...
oracle 控制檔案
1.控制檔案的位置 select name from v controlfile 2.控制檔案的格式為trl二進位制檔案 3.建立乙個控制檔案 1 獲取資料檔案和重做日誌檔案列表 控制檔案 select name from v datafile 日誌檔案 select member from v l...