oracle引數控制日誌三類檔案

2021-06-22 17:54:46 字數 2365 閱讀 9286

初始化引數檔案用來約束例項的行為.

控制檔案主要用來存放資料庫的名字,資料檔案的位置等資訊.

日誌檔案主要用來存放資料庫中資料變化的操作.

一.初始化引數檔案:有文字pfile(init.ora或init.ora)和二進位制spfile(spfile.ora或spfile.ora)形式.啟動選取優先順序:spfile.ora==>spfile.ora==>init.ora==> init.ora.查詢是pfile還是spfile啟庫:sys@ora11g>show parameter pfile ,value有值就可認為是spfile啟動.

二.控制檔案是乙個二進位制的檔案,乙個控制檔案只屬於乙個資料庫.控制檔案在建立資料庫時自動建立,當資料庫的資訊發生改變,控制檔案也隨之被改變,控制檔案不能手動修改,只能由oracle資料庫本身自己來修改.在資料庫啟動和關閉時都要使用控制檔案,沒控制檔案,資料庫將無法工作.資料字典是v$controlfile

控制檔案:在建立乙個資料庫和增加或刪除表空間等操作,控制檔案都會自動更新.按照程序分工來看更新控制檔案:日誌寫入程序(lgwr)負責把當前日誌序列號記錄到控制檔案;檢驗佔程序(ckpt)負責把核驗點的資訊記錄到控制檔案;歸檔程序負責把歸檔日誌的資訊記錄到控制檔案中.控制檔案的路徑儲存在資料庫初始化檔案

資料庫啟動時使用那幾個控制檔案由初始化引數檔案決定,檢視:sys@ora11g> select value from v$parameter where name='control_files';

如果是pfile方式啟動庫:關庫->拷貝控制檔案->修改pfile的control_files引數值->重新啟庫.

如果是spfile方式啟動庫:拷貝控制檔案->確保資料庫開啟狀態->執行命令alter system set control_files='檔案路徑1','檔案路徑2'...,'檔案路徑n' scope=spfile;->重啟庫

控制檔案備份:

a.產生二進位制檔案:sql> alter database backup controlfile to '/home/oracle/control.bak';

b.產生文字檔案:sql> alter database backup controlfile to trace as '/home/oracle/control.txt';

當控制檔案全部損壞或要永久地修改資料庫的引數設定時,才考慮手工建立控制檔案.

三.日誌檔案當然也是二進位制的,分重做日誌檔案和歸檔日誌檔案兩種.重做日誌檔案主要記錄資料庫的操作過程.需要恢復資料庫時,重做日誌檔案可以將日誌從備份還原的資料庫上再執行一遍,以達到資料庫的最新狀態.oracle執行時有歸模式和非歸檔模式.在非歸檔模式下,所有的日誌檔案都寫在重做日誌檔案中,如果重做日誌檔案寫滿了,那麼就把前面的日誌檔案覆蓋了.在歸檔模式下,如果重做日誌檔案全部寫滿後,就把第乙個重做日誌檔案寫入歸檔日誌檔案中,再把日誌寫到第乙個重做日誌檔案中.資料字典v$database,例如:select name,log_mode from v$database;檢視資料是不是歸檔模式來執行.

1.查詢日誌的儲存資訊:sql> select * from v$logfile;

2.檢視重做日誌工作狀態:sql> select * from v$log;

current 當前 當前日誌非常重要 若當前日誌組丟失 系統崩潰恢復時將會丟失資料

unused  未使用

active  活動的 說明這組redo記錄的條目裡關聯的髒塊沒寫盤 或者說這組日誌在例項恢復時需要

inactive 表明日誌條目裡關聯的髒塊已經全部寫盤 或者說這組日誌例項恢復已經不需要了

3.手工切換日誌:sql> alter system switch logfile;(切換後,再檢視重做日誌工作狀態)

4.檢視日誌切換資訊:sql> select to_char(first_time,'yyyy-mm-dd hh24:mi:ss') first_time from v$log_history;

6.刪除日誌組有以下限制:

a.乙個資料庫至少2個日誌組,不能刪除至少於2個日誌組 

b.活動或當前日誌組不允許刪除

c.如果資料庫執行在 archivelog(歸檔)模式下,並且未將日誌檔案組歸檔,那麼無法丟棄該組

d.當刪除日誌組時,檔案沒有正真的刪除,需要人工刪除(os下去刪) 

sql> alter system checkpoint;

sql> alter database drop logfile group 1;

刪除日誌組成員有如下限制:

current不能刪,active可以刪

最後乙個有效成員不能刪  

在刪除聯機重做日誌成員時並未刪除作業系統檔案

sql> alter database drop logfile member '/u01/oracle/oradata/ora10g/redo02a.log';

par函式col引數 控制顏色

col引數用來控制顏色,其實有一些列的顏色相關的引數,都是以col 開頭 par col red plot 1 5,1 5,main main sub sub xlab xlab ylab ylab text 3,3,text 效果圖如下 從效果圖中可以看出,只有座標系中的點和文字以及繪圖邊框的顏色...

oracle 日誌檔案 引數檔案 控制檔案備份恢復

在此之前搞清楚每個檔案的作用,一定要掌握oracle的基本概念。一 基本檔案的備份恢復 1 logfile多元化和備份恢復 日誌查詢 select from v logfile select from v log 手工切換日誌 alter system switch logfile 手工檢查點 al...

linux下面的可變引數控制函式

這一組函式涉及的stdarg.h標頭檔案,可以實現函式引數的變長傳遞,在標頭檔案中定義了乙個va list,這個變數是乙個字元指標,由va start,va end界定 typedef struct char a0 int offset va list 可變長的引數控制函式 void va star...