[20161129]奇怪的轉儲命令.txt
--如果你轉儲檔案頭使用如下命令:
sys@book> alter system dump datafile 6 block 1;
system altered.
start dump data blocks tsn: 8 file#:6 minblk 1 maxblk 1
block 1 (file header) not dumped:use dump file header command
end dump data blocks tsn: 7 file#: 6 minblk 2 maxblk 1
--也就是檔案頭不能使用這樣的方式。
sys@book> alter system dump datafile '/mnt/ramdisk/book/sugar01.dbf' block 1;
system altered.
*** 2016-11-29 15:07:31.354
start dump data block from file /mnt/ramdisk/book/sugar01.dbf minblk 1 maxblk 1
v10 style file header:
compatibility vsn = 186647552=0xb200400
db id=1337401710=0x4fb7216e, db name='book'
activation id=0=0x0
control seq=43937=0xaba1, file size=5120=0x1400
file number=6, blksiz=8192, file type=3 data
dump all the blocks in range:
end dump data block from file /mnt/ramdisk/book/sugar01.dbf minblk 2 maxblk 1
--至少可以看到dbid
--如果執行如下:
sys@book> alter system dump datafile '/mnt/ramdisk/book/sugar01.dbf' block 2;
system altered.
--你可以發現這樣實際上訪問2個資料塊。
sys@book> alter system dump datafile 6 block 2;
system altered.
sys@book> alter system dump datafile '/mnt/ramdisk/book/sugar01.dbf' block 135;
system altered.
--你可以看到除了檔案頭資訊,還包括塊135的資訊。也就是使用檔名方式要顯示第1塊的相關資訊。
--即使dump帶檔名,要轉儲135塊,這樣寫:
sys@book> alter system dump datafile '/mnt/ramdisk/book/sugar01.dbf' block min 135 block max 135;
system altered.
sys@book> alter system dump datafile '/mnt/ramdisk/book/users01.dbf' block min 135 block max 135;
system altered.
--即使這樣也要掃瞄檔案頭出現如下資訊:
start dump data block from file /mnt/ramdisk/book/users01.dbf minblk 135 maxblk 135
v10 style file header:
compatibility vsn = 186647552=0xb200400
db id=1337401710=0x4fb7216e, db name='book'
activation id=0=0x0
control seq=44604=0xae3c, file size=6400=0x1900
file number=4, blksiz=8192, file type=3 data
dump all the blocks in range:
buffer tsn: 4 rdba: 0x01000087 (4/135)
scn: 0x0000.000e0ef0 seq: 0x01 ***: 0x06 tail: 0x0ef00601
frmt: 0x02 chkval: 0xe273 type: 0x06=trans data
hex dump of block: st=0, typ_found=1
--如果你不想使用
alter session set events 'immediate trace name file_hdrs level 12';
--要看檔案頭資訊要執行如下:
alter system dump datafile '/mnt/ramdisk/book/sugar01.dbf' block 1;
而不能使用
alter system dump datafile 6 block 1;
--另外一點在mount狀態下,不能使用alter system dump datafile 6 block 2;,因為這個時候無法識別檔案號,
--一些檢視物件還無法訪問。
Ubuntu的核心轉儲工具
ubuntu 官方連線 kdump是乙個linux核心崩潰轉儲機制,這個機制的原理是在記憶體中保留一塊區域,這塊區域用來存放capture kernel,當前的核心發生crash後,通過kexec把保留區域的capture kernel執行起來,由capture kernel負責把crash ker...
獲取程序的核心轉儲
使用命令ulimit可以檢視核心轉儲功能是否開啟 ulimit c 0 c選項表示核心轉儲檔案的大小限制。0表示核心轉儲無效。可以使用下面的命令開啟 ulimit c unlimited 再次檢視 ulimit c unlimited 執行測試程式 test ulimit 段錯誤 核心已轉儲 fil...
kdump轉儲的核心實現
前面一篇文章介紹了kexec和kdump的思想,本文著重講它們的另乙個方面,就是kdump到底是如何轉儲垮掉核心的記憶體映像的。首先定義乙個鍊錶,它很重要。static list head vmcore list unsigned long long elfcorehdr addr elfcore ...