Corrupt block (Oracle) - Как выяснить?
Модераторы: Trinity admin`s, Free-lance moderator`s
Corrupt block (Oracle) - Как выяснить?
Имеется IBM XSERIES 346 c SCSI контроллером IBM ServeRAID-6M к которому подключен дисковый массив IBM EXP400, 14 дисков IBM-ESXS MAU3073N.
Разбивка RAID-массива:
Raid 1(2диска),
Raid 1(2диска),
Raid 10(4диска),
Raid 5(6дисков)
Размер страйпа - 64k
Операционка - W2K3, SP1
На этой машине работает база Oracle 8.1.7.4
Проблема - периодически появляются ошибки в event log Oracle о
поврежденных блоках:
***
Corrupt block relative dba: 0x0a00e2f2 (file 40, block 58098)
Fractured block found during backing up datafile
Data in bad block -
type: 6 format: 2 rdba: 0x0a00e2f2
last change scn: 0x0004.4b14a107 seq: 0x1 flg: 0x02
consistency value in tail: 0x2c00b009
check value in block header: 0x0, block checksum disabled
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of blocknum=58098, file=H:\ORADB\DATA\TBSDAT501.DBF. found valid data
***
Corrupt block relative dba: 0x0a00e2f3 (file 40, block 58099)
Bad header found during backing up datafile
Data in bad block -
type: 0 format: 7 rdba: 0x06010bc5
last change scn: 0xc008.00624332 seq: 0x26 flg: 0x07
consistency value in tail: 0x596d0601
check value in block header: 0x6778, computed block checksum: 0x1ddb
spare1: 0x6, spare2: 0x40, spare3: 0x508
***
Reread of blocknum=58099, file=H:\ORADB\DATA\TBSDAT501.DBF. found valid data
***
Кто-нибудь знает, как выяснить из-за чего возникает эта ошибка?
Oracle отправляет к железу... :(
Эти ошибки появляются при выполнении операции резервирования RMAN на ленту, и номера блоков от резервирования к резервированию постоянно меняются - а иногда вообще не появляются. Несколько раз были большие проблемы - при работающей базе вдруг пошли сообщения - о corrupt block - таблица была испорчено, но восстановили... Так что как на пороховой бочке...
Разбивка RAID-массива:
Raid 1(2диска),
Raid 1(2диска),
Raid 10(4диска),
Raid 5(6дисков)
Размер страйпа - 64k
Операционка - W2K3, SP1
На этой машине работает база Oracle 8.1.7.4
Проблема - периодически появляются ошибки в event log Oracle о
поврежденных блоках:
***
Corrupt block relative dba: 0x0a00e2f2 (file 40, block 58098)
Fractured block found during backing up datafile
Data in bad block -
type: 6 format: 2 rdba: 0x0a00e2f2
last change scn: 0x0004.4b14a107 seq: 0x1 flg: 0x02
consistency value in tail: 0x2c00b009
check value in block header: 0x0, block checksum disabled
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of blocknum=58098, file=H:\ORADB\DATA\TBSDAT501.DBF. found valid data
***
Corrupt block relative dba: 0x0a00e2f3 (file 40, block 58099)
Bad header found during backing up datafile
Data in bad block -
type: 0 format: 7 rdba: 0x06010bc5
last change scn: 0xc008.00624332 seq: 0x26 flg: 0x07
consistency value in tail: 0x596d0601
check value in block header: 0x6778, computed block checksum: 0x1ddb
spare1: 0x6, spare2: 0x40, spare3: 0x508
***
Reread of blocknum=58099, file=H:\ORADB\DATA\TBSDAT501.DBF. found valid data
***
Кто-нибудь знает, как выяснить из-за чего возникает эта ошибка?
Oracle отправляет к железу... :(
Эти ошибки появляются при выполнении операции резервирования RMAN на ленту, и номера блоков от резервирования к резервированию постоянно меняются - а иногда вообще не появляются. Несколько раз были большие проблемы - при работающей базе вдруг пошли сообщения - о corrupt block - таблица была испорчено, но восстановили... Так что как на пороховой бочке...
Про тот как все устроено и почему сие возникает вроде как пишут тут:
http://www.dbasupport.com/oracle/ora9i/ ... n1_1.shtml
И еще рекомендуют юзать archivelog-и.
http://www.dbasupport.com/oracle/ora9i/ ... n1_1.shtml
И еще рекомендуют юзать archivelog-и.
Спасибо за ссылку, но эта статья обзорная...
Из этой статьи можно выделить область проблемы:
System Memory (memory or paging problems, caching problems)
Disk Controller (Bad I/O hardware or firmware, caching problems )
Disk Device ( problem with device driver or mechanical problem)
Others ( operating system bugs, oracle bugs, disk repair utilities )
System Memory - меняли память, делали зеркалирование памяти...
(операционка - win2k3 SP1) есть такой-же сервак с таким-же дисковым массивом - там подобных проблем нет...
Disk Controller (Bad I/O hardware or firmware, caching problems )
установлены самые последние обновления... но проблема не исчезла...
Disk Controller (Bad I/O hardware or firmware, caching problems )
Disk Device ( problem with device driver or mechanical problem)
если-бы были проблемы на этом уровне, то наверно были-бы сообщения не только на уровне Oracle, но и на уровне системы... но такие операции, как копирование файлов не приводит к их порче.
Others ( operating system bugs, oracle bugs, disk repair utilities )
вот в этом и проблема - как найти на каком этапе возникает corrupt block - и принять решение о замене оборудования или о том как возможно обойти другим способом...
База данных, конечно, в режиме archivelog. Но неизвестно, будет ли в случае сбоя испорченный блок неповрежден в сохраненных логах.
Пока известно одно - когда идут сообщения о поврежденных блоках, то их количество меньше размера страйпа, т.е. количество поврежденных блоков не больше 7 или 8Kb * 7 = 56Kb, что меньше 64Kb - размер спрайпа в Raid массиве.
После такого складывается впечатление что "поведение" внешних Raid массивов нельзя назвать надежным...
Из этой статьи можно выделить область проблемы:
System Memory (memory or paging problems, caching problems)
Disk Controller (Bad I/O hardware or firmware, caching problems )
Disk Device ( problem with device driver or mechanical problem)
Others ( operating system bugs, oracle bugs, disk repair utilities )
System Memory - меняли память, делали зеркалирование памяти...
(операционка - win2k3 SP1) есть такой-же сервак с таким-же дисковым массивом - там подобных проблем нет...
Disk Controller (Bad I/O hardware or firmware, caching problems )
установлены самые последние обновления... но проблема не исчезла...
Disk Controller (Bad I/O hardware or firmware, caching problems )
Disk Device ( problem with device driver or mechanical problem)
если-бы были проблемы на этом уровне, то наверно были-бы сообщения не только на уровне Oracle, но и на уровне системы... но такие операции, как копирование файлов не приводит к их порче.
Others ( operating system bugs, oracle bugs, disk repair utilities )
вот в этом и проблема - как найти на каком этапе возникает corrupt block - и принять решение о замене оборудования или о том как возможно обойти другим способом...
База данных, конечно, в режиме archivelog. Но неизвестно, будет ли в случае сбоя испорченный блок неповрежден в сохраненных логах.
Пока известно одно - когда идут сообщения о поврежденных блоках, то их количество меньше размера страйпа, т.е. количество поврежденных блоков не больше 7 или 8Kb * 7 = 56Kb, что меньше 64Kb - размер спрайпа в Raid массиве.
После такого складывается впечатление что "поведение" внешних Raid массивов нельзя назвать надежным...
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей