日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

帶你深入了解Oracle數(shù)據(jù)庫(kù)的熱備份原理

瀏覽:150日期:2023-11-28 18:07:27
這篇論壇文章(賽迪網(wǎng)技術(shù)社區(qū))深入分析了Oracle數(shù)據(jù)庫(kù)的熱備份原理,更多內(nèi)容請(qǐng)參考下文。

我們都知道oracle的備份有幾鐘方式,冷備,熱備,rman,imp等,我們注意到當(dāng)我們采取熱備的時(shí)候,需要對(duì)每個(gè)要備份的表空間置為backup模式。通常的熱備腳本都是這樣的:

alter tablespace XXX begin backup;

cp XXX ....

alter tablespace XXX end backup;

(這里需要注意一點(diǎn),oracle的最小存儲(chǔ)單位是一個(gè)數(shù)據(jù)塊,一個(gè)塊的大小通常設(shè)置為8k,而操作系統(tǒng)的塊通常是512bytes,這樣的話一個(gè)oracle的數(shù)據(jù)由很多個(gè)操作系統(tǒng)的塊組成。而且對(duì)于一個(gè)數(shù)據(jù)文件來(lái)說(shuō),它的所有塊對(duì)應(yīng)的操作系統(tǒng)的塊并不是按順序存儲(chǔ)的,當(dāng)運(yùn)行cp等操作系統(tǒng)命令時(shí)并不能指定從那個(gè)oracle數(shù)據(jù)塊開(kāi)始拷貝。)當(dāng)open數(shù)據(jù)庫(kù)的時(shí)候,oracle會(huì)去比較控制文件中數(shù)據(jù)文件記錄和數(shù)據(jù)文件頭的checkpoint cnt,如果兩者相同,則判斷不需要介質(zhì)恢復(fù),如果不同,這時(shí)候oracle就會(huì)報(bào)某某文件需要介質(zhì)恢復(fù)。然后拷貝回?cái)?shù)據(jù)文件備份我們開(kāi)始recover,這時(shí)候就從上次做備份時(shí)的scn開(kāi)始恢復(fù),運(yùn)用日志,直到恢復(fù)結(jié)束。當(dāng)cp數(shù)據(jù)文件時(shí),比如說(shuō)我們拷貝的第一個(gè)塊可能是scn為100的數(shù)據(jù)塊,當(dāng)我們完成這個(gè)塊的拷貝后,這個(gè)塊有可能被別的進(jìn)程多次修改,scn變?yōu)?00。我們知道當(dāng)數(shù)據(jù)庫(kù)發(fā)生檢查點(diǎn)時(shí)會(huì)去更新數(shù)據(jù)文件頭和控制文件中的checkpoint scn,如果當(dāng)我們?cè)赾p數(shù)據(jù)文件的同時(shí)發(fā)生了n次checkpoint,這時(shí)候數(shù)據(jù)文件頭的scn可能被更新了很多次。這時(shí)候cp的進(jìn)程去拷貝數(shù)據(jù)文件頭所在的操作系統(tǒng)塊,可能這個(gè)數(shù)據(jù)文件頭的塊因?yàn)楸籧heckpoint了很多次導(dǎo)致它的scn為1000,這時(shí)候整個(gè)數(shù)據(jù)文件會(huì)出現(xiàn)不一致,當(dāng)用這個(gè)備份文件去恢復(fù)時(shí),恢復(fù)進(jìn)程會(huì)從scn=1000開(kāi)始恢復(fù),這樣的話開(kāi)始那個(gè)scn=100的塊將丟失從scn100-scn1000的數(shù)據(jù),因?yàn)閿?shù)據(jù)塊并不應(yīng)用scn在1000以前的日志,而且這樣做的話可能出現(xiàn)一些數(shù)據(jù)塊的corruption,所以不置成backup模式備份的話并不可取。當(dāng)然,如果你能確保當(dāng)cp的時(shí)候不發(fā)生checkpoint,或者你的操作系統(tǒng)塊的大小不小于oracle的數(shù)據(jù)塊大小,這些情況下不置backup mode拷貝出來(lái)的文件也是有效的。

現(xiàn)在我們知道了為什么不能不設(shè)置backup模式,下面來(lái)講講alter tablespace XXX begin backup做了什么?

當(dāng)數(shù)據(jù)文件置于backup模式時(shí),oracle會(huì)去鎖定數(shù)據(jù)文件頭,這時(shí)候數(shù)據(jù)庫(kù)發(fā)生檢查點(diǎn)的話將不會(huì)修改文件頭的checkpoint scn,而只是增加checkpoint cnt,所以不管執(zhí)行cp的時(shí)候操作系統(tǒng)塊的拷貝順序是如何,oracle總會(huì)從文件頭的scn開(kāi)始恢復(fù),這樣的話也就避免了數(shù)據(jù)丟失和數(shù)據(jù)塊corruption.如果大家用的是rman來(lái)備份,那么就不會(huì)有這個(gè)問(wèn)題,因?yàn)閞man備份的時(shí)候rman會(huì)去對(duì)比數(shù)據(jù)塊的頭尾標(biāo)志,如果發(fā)現(xiàn)不一致,那么它將會(huì)再去讀這個(gè)塊,直到讀到一致的塊才往備份集里寫(xiě)。

但是alter tablespace XXX begin backup帶來(lái)的另一個(gè)問(wèn)題是會(huì)導(dǎo)致產(chǎn)生多余的日志,通過(guò)一個(gè)小小的試驗(yàn)就可以證明這一點(diǎn)。

SQL> select name,value from v$sysstat where name='redo size';

NAME VALUE

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

redo size 43408

SQL> update test set a=a;

1 row updated.

SQL> commit;

Commit complete.

SQL> select name,value from v$sysstat where name='redo size';

NAME VALUE

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

redo size 44060

SQL> ALTER SYSTEM DUMP LOGFILE '/netappredo/redo05.log';

System altered.

一個(gè)update的動(dòng)作產(chǎn)生44060-43408=652bytes的redo,把表空間置為backup mode:

SQL> alter tablespace test begin backup;

Tablespace altered.

SQL> select name,value from v$sysstat where name='redo size';

NAME VALUE

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

redo size 44732

SQL> update test set a=a;

1 row updated.

SQL> commit;

Commit complete.

SQL> select name,value from v$sysstat where name='redo size';

NAME VALUE

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

redo size 53560

SQL> alter tablespace test end backup;

Tablespace altered.

一個(gè)update的動(dòng)作產(chǎn)生53560-44732=8828bytes的redo,看看到底是記了些什么?

SQL> ALTER SYSTEM DUMP LOGFILE '/netappredo/redo05.log';

System altered.

REDO RECORD - Thread:2 RBA: 0x00004e.000000b0.0128 LEN: 0x01b0 VLD: 0x01

SCN: 0x0000.19ed24f7 SUBSCN: 1 06/29/2004 15:05:32

CHANGE #1 TYP:0 CLS:29 AFN:33 DBA:0x08400029

SCN:0x0000.19ed24f2 SEQ: 1 OP:5.2

...... (改動(dòng)向量1,記載對(duì)undo header事務(wù)表的修改)

CHANGE #2 TYP:0 CLS:30 AFN:33 DBA:0x0840002e

SCN:0x0000.19ed24f0 SEQ: 1 OP:5.1

...... (改動(dòng)向量2,記載對(duì)undo block的修改)

CHANGE #3 TYP:2 CLS: 1 AFN:51 DBA:0x0cc0000f

SCN:0x0000.19ed24e8 SEQ: 1 OP:11.5

KTB Redo (改動(dòng)向量3,記載對(duì)數(shù)據(jù)塊的修改,

也就是在數(shù)據(jù)塊上執(zhí)行update test set a=a)

op: 0x11 ver: 0x01

op: F xid: 0x0007.001.00014ece uba: 0x0840002e.0859.38

Block cleanout record, scn: 0x0000.19ed24f7 ver: 0x01 opt: 0x02,

entries follow...

itli: 1 flg: 2 scn: 0x0000.19ed24e8

KDO Op code: URP row dependencies Disabled

xtype: XA bdba: 0x0cc0000f hdba: 0x0cc0000b

itli: 2 ispac: 0 maxfr: 4858

tabn: 0 slot: 0(0x0) flag: 0x2c lock: 2 ckix: 0

ncol: 1 nnew: 1 size: 0

col 0: [ 2] c1 02

CHANGE #4 MEDIA RECOVERY MARKER SCN:0x0000.00000000 SEQ: 0 OP:5.20

......(改動(dòng)向量4,一些標(biāo)記)

我們看到了正常的日志記錄,此外還有些block cleanout及回滾段改變的日志記錄,但是相比較不是backup模式的日志來(lái)說(shuō)多了這一部分。

Log block image redo entry

Dump of memory from 0x0AE48820 to 0x0AE4A808

AE48820 00280001 00002C32 19ED24E6 1FE80000 [..(.2,...$......]

AE48830 00321F02 0CC00009 00210005 000307F1 [..2.......!.....]

AE48840 0840000E 0021100C 00002001 19ED24E8 [..@...!.. ...$..]

AE48850 001F0016 0001A94C 0840007C 000D0C08 [....L...|.@.....]

AE48860 00008000 19ED2468 00000000 00000000 [....h$..........]

AE48870 00020100 00160001 1F791F8C 00001F79 [..........y.y...]

AE48880 1F920002 0F88FFFF 0ED00F2C 0E180E74 [........,...t...]

AE48890 0D600DBC 0CA80D04 0BF00C4C 0B380B94 [..`.....L.....8.]

AE488A0 0A800ADC 09C80A24 0910096C 085808B4 [....$...l.....X.]

AE488B0 07A007FC 06E40744 06240684 056405C4 [....D.....$...d.]

......

這一部分是對(duì)更改的數(shù)據(jù)塊做的一個(gè)鏡像,把這個(gè)塊完全記錄到redo里面去了,但是為什么要這么做呢。

這就又牽扯到一個(gè)概念,'block split',當(dāng)數(shù)據(jù)文件在備份cp時(shí),因?yàn)閛racle數(shù)據(jù)塊和操作系統(tǒng)塊的差異,一個(gè)數(shù)據(jù)塊可能由16個(gè)操作系統(tǒng)塊組成(8k 數(shù)據(jù)塊,512bytes 系統(tǒng)塊),這樣的話可能出現(xiàn)一個(gè)數(shù)據(jù)塊包含了幾個(gè)不同版本的操作系統(tǒng)塊,會(huì)導(dǎo)致數(shù)據(jù)塊的不一致,所以在備份模式下如果有語(yǔ)句對(duì)備份塊產(chǎn)生更新,那么oracle會(huì)先把當(dāng)前塊復(fù)制一份到redo,當(dāng)恢復(fù)的時(shí)候如果碰到數(shù)據(jù)塊不一致就從redo把這個(gè)鏡像拷貝回去,然后在這個(gè)一致性的鏡像開(kāi)始恢復(fù)。 如果使用rman來(lái)備份可以避免產(chǎn)生過(guò)多的塊,就像上面所說(shuō)的,rman會(huì)去建議塊的一致性,所以不用復(fù)制鏡像塊到日志。

日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久蜜桃av| 欧美一区不卡| 免费在线亚洲| 国产精品毛片久久久| 人人爱人人干婷婷丁香亚洲| 欧美高清一区| 精品成人免费一区二区在线播放| 色综合五月天| 黑森林国产精品av| 亚洲va在线| 黄色av一区| 亚洲免费福利一区| 欧美午夜三级| 精品久久久中文字幕| 综合日韩av| 精品一区免费| 日精品一区二区三区| 国产精品久久久网站| 国产精品久久久久蜜臀| 亚洲成人va| 精品中文字幕一区二区三区av| 91精品综合| 日韩一区二区免费看| 日韩不卡在线观看日韩不卡视频| 97久久超碰| 日韩精品电影| 亚洲精品乱码久久久久久蜜桃麻豆 | 精品亚洲a∨一区二区三区18| 精品视频一区二区三区在线观看| 亚洲黄色中文字幕| 三级在线观看一区二区| 国产精品久久久久久模特| 久久国产主播| 婷婷成人av| 韩国三级一区| 日韩精品午夜视频| 中文字幕高清在线播放| 亚洲综合另类| 福利一区二区三区视频在线观看| 久久国产精品毛片| 日韩欧美二区| 国产精品伦一区二区| 免费日韩av| 日韩av福利| 国产福利亚洲| 免费人成在线不卡| 亚洲www啪成人一区二区| 国产欧美综合一区二区三区| 999久久久精品国产| 国产精品久久久一区二区| 青青草伊人久久| 亚洲日本三级| 天堂成人免费av电影一区| 国产a久久精品一区二区三区| 日韩一区二区三区高清在线观看| 国精品一区二区三区| 美女视频黄久久| 久久99蜜桃| 日韩av一区二区三区| 日韩精品欧美成人高清一区二区| 首页亚洲欧美制服丝腿| 日韩视频精品在线观看| 久久精品亚洲欧美日韩精品中文字幕| 国产精品高清一区二区| 日韩激情综合| 欧美亚洲自偷自偷| 国产精品白丝久久av网站| 欧美日韩一视频区二区| 国产麻豆精品久久| 国产精品s色| 精品成av人一区二区三区| 精品久久久亚洲| 91一区二区| 91超碰国产精品| 深夜福利亚洲| 麻豆中文一区二区| 激情欧美一区二区三区| 久久国产66| 老司机精品视频网| 麻豆成人av在线| bbw在线视频| 亚洲激情中文在线| 亚洲精品自拍| 国产不卡人人| 久久国产精品毛片| 精品香蕉视频| 狠狠久久婷婷| 欧美激情在线精品一区二区三区| 国产欧美一区二区三区精品酒店| 亚洲免费激情| 麻豆精品在线观看| 亚洲免费激情| 精品久久97| 日韩亚洲精品在线观看| 久久不见久久见免费视频7| 日韩欧美午夜| 日本午夜精品一区二区三区电影| 老牛国内精品亚洲成av人片| 久久午夜影视| 国产福利电影在线播放| 亚洲午夜久久| 欧美成人基地| 91亚洲无吗| 久久午夜精品一区二区| 成人三级高清视频在线看| 日韩久久一区| 九一国产精品| 美女av在线免费看| 亚洲永久字幕| 精品国产成人| 日韩国产精品久久久久久亚洲| 蜜桃av在线播放| 麻豆成人在线观看| 青草国产精品| 日本 国产 欧美色综合| 欧洲亚洲一区二区三区| 国产一区精品福利| 欧美激情久久久久久久久久久| 亚洲有吗中文字幕| 国产精品88久久久久久| 99成人超碰| 99久久激情| 久久精品影视| 99久久亚洲精品蜜臀| 欧美黄页在线免费观看| 国产福利资源一区| 国产精品久久久久久久免费软件| 日韩在线视频一区二区三区| 蜜臀va亚洲va欧美va天堂| 亚洲无线观看| 日本中文字幕一区二区视频 | 国产免费成人| 欧美网站在线| 在线日韩成人| 日本在线不卡视频一二三区| 日韩激情视频网站| 国产精品久久久久久久久免费高清 | 亚洲久久视频| 青草av.久久免费一区| 日本h片久久| 水蜜桃久久夜色精品一区| 欧美少妇精品| 欧美一区二区三区激情视频| 婷婷丁香综合| 久久午夜视频| 国产日本久久| 日本在线精品| 伊人精品久久| 精品一二三区| 亚洲激情婷婷| 色综合视频一区二区三区日韩 | 亚洲精品婷婷| 麻豆精品久久| 成人久久一区| 免费的成人av| 你懂的亚洲视频| 午夜影院欧美| 美腿丝袜在线亚洲一区| 欧美日韩精品在线一区| 日韩国产欧美在线视频| 欧美香蕉视频| 久久国产日韩欧美精品| 日本免费一区二区三区四区| 日韩在线观看中文字幕| 黑人精品一区| 国产亚洲精品美女久久| 99精品视频在线| 国产精品久久久久久模特| 国产一区2区| 日韩毛片一区| 国产视频一区免费看| 精品国产aⅴ| 欧美精品中文字幕亚洲专区| 99视频精品全国免费| 麻豆精品久久久| 日本v片在线高清不卡在线观看| 视频小说一区二区| 久久精品国产在热久久| 一区二区三区午夜视频| 欧洲毛片在线视频免费观看| 久久久久免费| 久久99精品久久久野外观看| 麻豆9191精品国产| 国产一区丝袜| 国产精品chinese| 日本中文字幕不卡| 国产午夜精品一区二区三区欧美 | 青青伊人久久| 亚洲bt欧美bt精品777| 99国产精品| 99久久精品网| 色爱综合av| 中文字幕在线高清| 视频在线不卡免费观看| 精品99在线| 国产精品一区二区精品视频观看 | 国产一区二区三区探花| 欧美日韩一区二区三区不卡视频| 亚洲精品一级| 欧美日韩中出|