笑對oracle歸檔

oracle歸檔相關


db_recovery_file_dest_size歸檔文件大小查看,修改算法

方式1:數據庫

SQL> show parameter db_recover; 服務器

NAME                                 TYPE        VALUE併發

------------------------------------ ----------- ------------------------------oracle

db_recovery_file_dest                string      /u/sside

db_recovery_file_dest_size           big integer 600G工具

方式2:優化

show parameter db_recovery_file_dest_size;加密

當咱們將數據庫的模式修改成歸檔模式的時候,若是沒有指定歸檔目錄,默認的歸檔文件就會放到Flash Recovery Area(上文的/u/ss)的目錄,spa

可是這個目錄是有大小限制的,若是超過了這個大小,就會致使2個問題,

一是不能完成歸檔;

二是,在出現問題後,若是此時重啓數據庫,那麼數據庫就沒法正常啓動。

這個問題有3個解決辦法:

(1)擴大Flash Recovery Area的容量

(2)刪除不用的歸檔日誌文件

(3)指定歸檔日誌文件到其餘目錄


歸檔日誌刪除的前提是要保證主備同步

delete noprompt archivelog until time 'sysdate-5';刪除5天前的歸檔。

從Oracle9i開始,spfile被引入Oracle數據庫,

Oracle首選spfile<ORACLE_SID>.ora文件做爲啓動參數文件;若是該文件不存在,Oracle選擇spfile.ora文件;

SQL> set line 256;#(設置linesize爲256,即每行不超過256個字符)

SQL> select * from v$flash_recovery_area_usage;

FILE_TYPE            PERCENT_SPACE_USED(已使用的) PERCENT_SPACE_RECLAIMABLE(可回收的) NUMBER_OF_FILES

-------------------- ------------------ ------------------------- ---------------

CONTROL FILE                          0                         0               0

REDO LOG                              0                         0               0

ARCHIVED LOG                      80.68                         0            1533

BACKUP PIECE                          0                         0               0

IMAGE COPY                            0                         0               0

FLASHBACK LOG                         0                         0               0

FOREIGN ARCHIVED LOG                  0                         0               0



oracle歸檔:

oracle 10g 中系統默認的狀況是以DB_RECOVERY_FILE_DEST定義的目錄來存放歸檔日誌。DB_RECOVERY_FILE_DEST參數是默認的flash recovery area(閃回恢復區路徑)的路徑,裏面存放有歸檔日誌、閃回日誌以及rman的備份文件等文件。

要使用rman備份就必需要對數據庫開啓歸檔。

archive log list查看是否開啓歸檔


SQL>  archive log list;

Database log mode            Archive Mode(數據庫日誌模式 歸檔模式)

Automatic archival             Enabled(自動存檔 啓用)

Archive destination            USE_DB_RECOVERY_FILE_DEST(指定閃回恢復區路徑。存檔終點 )

Oldest online log sequence     18965(最先的聯機日誌序列)

Next log sequence to archive   0(下一個存檔日誌序列)

Current log sequence           18983(當前日誌序列)


歸檔的刪除方式:

controlfile中記錄着每個archivelog文件的相關信息

固然們在OS下把這些物理文件delete掉後,在咱們的controlfile中仍然記錄着這些archivelog文件的相關信息,

在oracle的OEM管理器中有可視化的日誌展示出,當咱們手工清除 archive目錄下的文件後,這些記錄並無被咱們從controlfile中清除掉

 一個ORACLE歸檔日誌常常滿,表現爲/archivelog這個文件空間佔用100%大。


開啓數據庫歸檔:

在SQL*Plus下執行如下腳

alter system set log_archive_start = true scope = spfile;

修改系統的日誌方式是歸檔模式。

shutdown immediate;

關閉數據庫

startup mount;開啓到mount狀態

啓動 mount 實例,但不啓動數據庫

alter database archivelog;

更改數據庫爲歸檔日誌模式

alter database open;

正式開啓數據庫


RMAN(Recovery Manager)是一種用於備份(backup)、還原(restore)和恢復(recover)數據庫的 Oracle 工具

備份整個數據庫或數據庫部件,如表空間、數據文件、控制文件、歸檔文件以及Spfile參數文件。(SPfile(Server Parameter File,服務器參數文件

rman經過控制文件找到數據文件。數據塊爲單位進行備份。只備份使用過的數據庫。

支持對備份的數據進行壓縮。(1:5的壓縮比例)


rman須要備份控制文件的

rman備份的時候會使用佔用io,開啓io併發就能夠了(等同於給raan配置通道)

raan是經過備份腳本進行全庫備份的。

備份順序:先備份數據文件(datafile),再備份歸檔,再備份控制文件。


(一)、鏈接本地數據庫

[oracle@oracle ~]$ rman target /

[oracle@DB:/home/oracle]$rman target /

Recovery Manager: Release 11.2.0.3.0 - Production on Mon May 6 18:08:16 2019

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: S (DBID=14628404, not open)

或者先使用rman進入rman模式,而後使用connect target / 鏈接到相應的dbid


顯示 RMAN 默認配置

show all;

#使用控制文件來代替恢復目錄數據庫存放rman元數據信息

using target database control file instead of recovery catalog

RMAN configuration parameters for database with db_unique_name S are:

#當完成一次備份後,在作完第二次備份的時候,第一次備份結果將被標識爲廢棄。

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

#關閉備份優化

CONFIGURE BACKUP OPTIMIZATION OFF; # default

#指定i/o操做的設備類型:SBT or DISK.缺省是disk。

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

#當autobackup別置爲on時,rman作任何備份操做,都會自動對控制文件進行備份。

CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default

#配置控制文件的備份片的路徑和格式

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

#配置數據庫設備類型的並行度。並行的數目決定了開啓通道的個數

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

#配置備份集的大小

CONFIGURE MAXSETSIZE TO UNLIMITED; # default

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

#指定加密算法,還有一個是 ‘AES128'

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default

#指定歸檔文件的刪除策略,即:歸檔備份到備庫就能夠被刪除

CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;

#配置控制文件的快照文件的存放路徑和文件名,這個快照文件是在備份期間產生的,用於控制文件的讀一致性

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u/oracle/product/11.2/dbs/snapcf_s.f'; # default


歸檔日誌對於ORACLE的數據恢復和備份很是重要,不到萬不得已不要刪除歸檔日誌。

DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

說明:

SYSDATA-7,代表當前的系統時間7天前,before關鍵字表示在7天前的歸檔日誌,若是使用了閃回功能,也會刪除閃回的數據。

相關文章
相關標籤/搜索