Oracle 11g筆記 歸檔

2021-07-11 14:57:33 字數 2394 閱讀 2619

一、歸檔的概念

歸檔:oracle把填滿的聯機日誌檔案複製到乙個或多個路徑的過程。生成的檔案叫歸檔日誌檔案(archived redo log)。存放歸檔日誌檔案的路徑叫歸檔路徑。

只有資料庫執行在歸檔模式下才能進行歸檔,歸檔的過程一般由歸檔程序自動完成,乙個資料庫可以有乙個或多個歸檔程序,歸檔程序的數量由初始化引數log_archive_max_processes控制。

分類:非歸檔模式和歸檔模式

1、非歸檔模式

若開啟資料庫執行在非歸檔模式,則聯機日誌檔案不需要歸檔。當發生日誌切換時,如果聯機日誌檔案的狀態為inactive,日誌書寫程序(lgwr)將直接重用(覆蓋)聯機日誌檔案。

非歸檔模式只保護例項失敗,不保護介質失敗,當發生介質損壞時,dba需要還原資料庫的全備份,然後利用歸檔日誌檔案進行恢復,但非歸檔模式中對聯機日誌不做歸檔,因此會有資料的丟失。

在非歸檔模式下,dba不能執行資料庫的熱備份(資料庫執行時執行的備份),但dba可以關閉資料庫,執行資料庫的冷備份。

2、歸檔模式

若開啟資料庫執行在歸檔模式:若聯機日誌檔案沒有歸檔,日誌寫程序不能重用(覆蓋)聯機日誌檔案。dba可以啟動歸檔程序,讓它們自動完成聯機日誌檔案的歸檔,dba也可以手動歸檔聯機日誌檔案。

歸檔路徑引數:log_archive_dest、log_archive_dest_n(n從1到10)

二、例子

1、將資料庫切換至歸檔模式

(1)管理員身份連線資料庫,檢視歸檔狀態:sql>archive log list;

(2)關閉資料庫:sql>shutdown immediate;

(3)至目錄%oracle_home%/dbs下修改初始化引數檔案(pfile)

若不存在pfile,需要根據spfile生成pfile

sql>create pfile='....' from spfile='...'

在pfile檔案中定義歸檔日誌檔名的格式,如:

log_archive_format='log%t_%s_%r.arc'

設定資料庫為歸檔模式

(4)重建spfile

sql>create spfile='....' from pfile='...'

(5)啟動資料庫至mount狀態:sql>startup mount

(6)設定歸檔路徑

sql>alter system set log_archive_dest_1='location=/wxxrdb/arch1' scope=both;

sql>alter system set log_archive_dest_2='location=/wxxrdb/arch2' scope=both;

注:可以設定多個歸檔路徑,location為關鍵字,指定歸檔路徑的位置;scope=both表示永久性修改歸檔路徑,並立即生效。

(7)把資料庫切換至歸檔模式:sql>alter database archivelog

(8)檢視資料庫是否在歸檔模式:sql>archive log list;

檢視歸檔路徑是否設定正確:sql>show parameter log_archive_dest

(9)開啟資料庫:sql>alter database open;

2、將資料庫切換至非歸檔模式

(1)管理員身份連線資料庫,檢視歸檔狀態:sql>archive log list;

(2)關閉資料庫:sql>shutdown immediate;

(3)啟動資料庫至mount狀態:sql>startup mount

(4)把資料庫切換至歸檔模式:sql>alter database noarchivelog

(5)檢視資料庫是否在歸檔模式:sql>archive log list;

(6)開啟資料庫:sql>alter database open;

3、手工歸檔聯機日誌檔案

(1)管理員身份連線資料庫

(2)手工歸檔日誌檔案

a.歸檔所有已經填滿的聯機日誌檔案

sql>alter system archive log all;

b.歸檔當前的聯機日誌檔案(該日誌可能還沒有填滿)

sql>alter system archive log current;

4、檢視是否為歸檔模式:

sql>archive log list;

或sql>select name,log_mode from v$database;

5、檢視產生了哪些歸檔日誌檔案

sql>select name,sequence#,completion_time from v$archived_log order by sequence# desc;

6、查詢啟動了哪些歸檔程序

sql>select * from v$bgprocess where paddr<>'00' and name like '%arc%';

Oracle 11g 設定歸檔以及修改歸檔路徑

今天在對oracle進行操作的時候需要開啟歸檔,整理一下,寫個部落格。使用sqlplus as sysdba 登入oracle。輸入 archive log list 檢視歸檔是否設定以及路徑是否修改。出現這種情況是沒有設定歸檔以及修改路徑的。輸入 alter system set log arch...

Oracle 11g筆記 序列

一 序列 序列又叫序列生成器,用於提供一系列的數字,應用程式開發人員使用序列生成唯一鍵。序列按照一定的規律增加或減少。序列儲存在system表空間中,序列不像表,它不會占用磁碟空間。每次事務的提交和回滾都不會影響序列。示例 1 建立序列 sql create sequence seq1 increm...

Oracle 11g筆記 備份 恢復

備份 恢復 匯出 匯入 exp imp oracle10g看資料幫浦 data pump 提公升了效能,使用expdb impdb命令的dbms datapump包 離線備份 資料庫 聯機備份 資料庫處於archivelog模式。alter tablespace users begin backup...