日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[20170310]关于在线日志与归档3.txt

發布時間:2025/3/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [20170310]关于在线日志与归档3.txt 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[20170310]關于在線日志與歸檔3.txt

--//當日志寫滿了,或者執行手工了切換,再或者rman備份時有時也會觸發日志切換:
alter system switch logfile ;
alter system archive log current ;

--//前面已經探究日志文件的OS塊(第0塊)以及日志文件頭塊(第1塊).剩下日志記錄了
--//本文簡單探究日志歸檔是如何保存的.探查日志文件的記錄.

1.環境:
--//啟動到mount狀態.

SYS@book> @ &r/ver
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SYS@book> @ &r/logfile
GROUP# STATUS???? TYPE?????? MEMBER????????????????????????? IS_ GROUP# THREAD# SEQUENCE#?????? BYTES BLOCKSIZE MEMBERS ARC STATUS???? FIRST_CHANGE# FIRST_TIME????????? NEXT_CHANGE# NEXT_TIME
------ ---------- ---------- ------------------------------- --- ------ ------- --------- ----------- --------- ------- --- ---------- ------------- ------------------- ------------ -------------------
???? 1??????????? ONLINE???? /mnt/ramdisk/book/redo01.log??? NO?????? 1?????? 1?????? 695??? 52428800?????? 512?????? 1 YES INACTIVE???? 13276910949 2017-02-28 14:40:12? 13276931102 2017-03-09 10:01:48
???? 2??????????? ONLINE???? /mnt/ramdisk/book/redo02.log??? NO?????? 2?????? 1?????? 696??? 52428800?????? 512?????? 1 YES INACTIVE???? 13276931102 2017-03-09 10:01:48? 13276931986 2017-03-09 10:02:36
???? 3??????????? ONLINE???? /mnt/ramdisk/book/redo03.log??? NO?????? 3?????? 1?????? 697??? 52428800?????? 512?????? 1 NO? CURRENT????? 13276931986 2017-03-09 10:02:36 2.814750E+14
???? 4??????????? STANDBY??? /mnt/ramdisk/book/redostb01.log NO
???? 5??????????? STANDBY??? /mnt/ramdisk/book/redostb02.log NO
???? 6??????????? STANDBY??? /mnt/ramdisk/book/redostb03.log NO
???? 7??????????? STANDBY??? /mnt/ramdisk/book/redostb04.log NO
7 rows selected.

--//僅僅拿seq#=696 來研究.

$ ls -l /mnt/ramdisk/book/redo02.log /u01/app/oracle/archivelog/book/1_696_896605872.dbf
-rw-r----- 1 oracle oinstall 52429312 2017-03-09 10:02:36 /mnt/ramdisk/book/redo02.log
-rw-r----- 1 oracle oinstall? 1626112 2017-03-09 10:02:38 /u01/app/oracle/archivelog/book/1_696_896605872.dbf

--//前面我們探查了日志文件的OS塊.下面將繼續探究日志的記錄從第2塊開始.

2.先取第2塊看看:

$ dd if=/u01/app/oracle/archivelog/book/1_696_896605872.dbf bs=512 count=1 skip=2 2>/dev/null | md5sum
d8c6fc00e84b8eff93ecad9ff87627c7? -

$ dd if=/mnt/ramdisk/book/redo02.log bs=512 count=1 skip=2 2>/dev/null | md5sum
d8c6fc00e84b8eff93ecad9ff87627c7? -

--//md5一樣,哈哈下面就基本就是原始的拷貝了.也就是不做任何修改.
--//1626112/512=3176,跳過前面2塊,就是3174塊.

$ dd if=/u01/app/oracle/archivelog/book/1_696_896605872.dbf bs=512? skip=2 2>/dev/null | md5sum
62f6d618e02ed3e7ba50ed68138fe440? -

$ dd if=/u01/app/oracle/archivelog/book/1_696_896605872.dbf bs=512 count=3174 skip=2 2>/dev/null | md5sum
62f6d618e02ed3e7ba50ed68138fe440? -

$ dd if=/mnt/ramdisk/book/redo02.log bs=512 count=3174 skip=2 2>/dev/null|? md5sum
62f6d618e02ed3e7ba50ed68138fe440? -

--//可以看出第2塊的redo記錄開始就是簡單的拷貝.

3.這樣就可以產生一個恢復思路,假設redo損壞,我該日志已經歸檔日志文件,可以利用這個文件重新構造在線日志:
--//A.第0塊修改就是記錄塊數量. 偏移0x18~0x1B處.
? 實際上只要大小一樣,文件頭可以使用別的好的文件頭文件替換.

$ dd if=/mnt/ramdisk/book/redo01.log bs=512 count=1? 2>/dev/null|? md5sum
1e958fb94196354fc1d7a650b43d728b? -

$ dd if=/mnt/ramdisk/book/redo02.log bs=512 count=1? 2>/dev/null|? md5sum
1e958fb94196354fc1d7a650b43d728b? -

$ dd if=/mnt/ramdisk/book/redo03.log bs=512 count=1? 2>/dev/null|? md5sum
1e958fb94196354fc1d7a650b43d728b? -

$ dd if=/mnt/ramdisk/book/redostb01.log bs=512 count=1? 2>/dev/null|? md5sum
1e958fb94196354fc1d7a650b43d728b? -

--//你可以發現os塊,md5都是一樣(因為日志文件大小一樣)

B.第1塊我感覺不改也可以通過.

C.日志記錄就是簡單拷貝,根本不需要改動.剩下就是空白塊如何填充.

$ ls -l /mnt/ramdisk/book/redo02.log /u01/app/oracle/archivelog/book/1_696_896605872.dbf
-rw-r----- 1 oracle oinstall 52429312 2017-03-09 10:02:36 /mnt/ramdisk/book/redo02.log
-rw-r----- 1 oracle oinstall? 1626112 2017-03-09 10:02:38 /u01/app/oracle/archivelog/book/1_696_896605872.dbf

--//52429312 - 1626112=50803200,還有50803200/512=99225塊需要 補充.主要這個如何實現.
--//直接使用空白是否可行,留下下次測試....

總結

以上是生活随笔為你收集整理的[20170310]关于在线日志与归档3.txt的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。