Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 обнаружение поврежденных блоков  [new]
expimp
Member

Откуда:
Сообщений: 573
Приложение наскочило на поврежденный блок и выдало ошибку.
В алерте было такое месяц назад было сообщение

Fri Dec 23 12:10:43 EET 2011
Corrupt Block Found
TSN = 7, TSNAME = APPS_TS_QUEUES
RFN = 17, BLK = 6312, RDBA = 71309480
OBJN = 29613, OBJD = 29613, OBJECT = SYS_IOT_TOP_29611, SUBOBJECT =
SEGMENT OWNER = APPLSYS, SEGMENT TYPE = Index Segment
Fri Dec 23 12:10:53 EET 2011
Errors in file /orastorage61/bidata/proddb10g/admin/PROD_omz-oebs-goit/udump/prod_ora_2604.trc:
ORA-00600: internal error code, arguments: [kddummy_blkchk], [17], [6312], [6401], [], [], [], []
Fri Dec 23 12:11:09 EET 2011
Doing block recovery for file 17 block 6312
Fri Dec 23 12:11:09 EET 2011
Resuming block recovery (PMON) for file 17 block 6312
Fri Dec 23 12:11:09 EET 2011
Block recovery from logseq 5385, block 179644 to scn 6596173695
Fri Dec 23 12:11:09 EET 2011
Recovery of Online Redo Log: Thread 1 Group 2 Seq 5385 Reading mem 0
Mem# 0: /orastorage61/sysdbtmp/log02a.dbf
Fri Dec 23 12:11:09 EET 2011
Corrupt Block Found
TSN = 7, TSNAME = APPS_TS_QUEUES
RFN = 17, BLK = 6312, RDBA = 71309480
OBJN = 29613, OBJD = 29613, OBJECT = SYS_IOT_TOP_29611, SUBOBJECT =
SEGMENT OWNER = APPLSYS, SEGMENT TYPE = Index Segment
Fri Dec 23 12:11:09 EET 2011
Block recovery completed at rba 5385.180290.16, scn 1.2301206400


Тогда увидев, что восстановление закончено, успокоился и забыл.
Теперь вижу, что зря. DBV наличие поврежденного блока подтверждает.

Храню резервные наборы с логами за три месяца. В них RMAN нужного не нашел.
Просмотрел алерты за год - там упоминаний о поврежденных блоков больше нет.

Был уверен, что при резервировании RMAN прочитывает каждый блок и в случае повреждений об этом сообщает.
Просмотрел все журналы RMAN за год - все чисто.

Как уберечься от таких проблем?
БД ~ 300Gb. Запускать каждую ночь DBV или exp не можно.
2 фев 12, 12:34    [12018215]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
expimp
Member

Откуда:
Сообщений: 573
Пока выполнялась команда SQL> blockrecover ...

В alert_log'е появлся еще букет записей

Corrupt block 42480 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1181_773798408, corr_type=-3
Corrupt block 42480 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1133_773193607, corr_type=-3
Corrupt block 42480 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1085_772588808, corr_type=-3
Corrupt block 33389 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1042_771985919, corr_type=-3
Corrupt block 33389 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_988_771381278, corr_type=-3
Corrupt block 33389 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_934_770776578, corr_type=-3
Corrupt block 42480 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_880_770169607, corr_type=-3
Corrupt block 42480 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_832_769564808, corr_type=-3
Corrupt block 27564 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_781_768961909, corr_type=-3
Corrupt block 27564 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_727_768270668, corr_type=-3
Corrupt block 35064 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1181_773798408, corr_type=-3
Corrupt block 35064 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1133_773193607, corr_type=-3
Corrupt block 35064 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1085_772588808, corr_type=-3
Corrupt block 29822 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_1043_771986675, corr_type=-3
Corrupt block 29822 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_989_771382083, corr_type=-3
Corrupt block 29822 found during reading backup piece, file=/storage5320/backup1/backup/prod/rman/data/db0_PROD_935_770777394, corr_type=-3
Corrupt block 35064 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_880_770169607, corr_type=-3
Corrupt block 35064 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_832_769564808, corr_type=-3
Corrupt block 35183 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_782_768962634, corr_type=-3
Corrupt block 35183 found during reading backup piece, file=/storage5320/backup2/backup/prod/rman/data/db0_PROD_728_768271404, corr_type=-3


Какие могут быть действия?
2 фев 12, 12:39    [12018242]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
expimp
Member

Откуда:
Сообщений: 573
Разобрался.
Блоки, увы, не восстановить. Но теперь буду знать, что RMAN выводит сообщение не на экран,
а в v$backup_corruption
(((
2 фев 12, 15:33    [12019972]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
zaqxsw111
Member

Откуда: Moscow
Сообщений: 806
expimp, вообще-то очень странно.
если rmanу не говорить насильно про пропуск поврежденных блоков, он сам отваливается при бэкапе.
при восстановлении из бэкапа на какой-нибудь момент в прошлом тоже есть битые блоки?
2 фев 12, 15:42    [12020091]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
expimp
Member

Откуда:
Сообщений: 573
zaqxsw111
expimp, вообще-то очень странно.
если rmanу не говорить насильно про пропуск поврежденных блоков, он сам отваливается при бэкапе.
при восстановлении из бэкапа на какой-нибудь момент в прошлом тоже есть битые блоки?


Два битых блока, оказывается, присутствуют не меньше года - проверил через dbv файлы из имеющихся холодных бекапов.
Эти же битые блоки кочуют в тестовые БД, которые я поднимаю каждую неделю и в стендбае.
И RMAN при duplicate target database... тоже ничего не сообщает.

В стандбае, в v$database_corrupted_block показывает только один блок, который кривой и на продуктиве. Второй, почему-то,
не показывает. Хотя dbv сразу находит оба...

Версия 10.2.0.5 могли бы и поактивнее сообщать о проблемах блоков ((
2 фев 12, 16:45    [12020814]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18486
Блок может быть отформатирован и распределен сегменту, но не использоваться (в списке свободных блоков для индекса). Тогда RMAN (с 10g) будет его пропускать при бэкапе (AS BACKUPSET). Тогда, кстати, и MOVE сегмента должен пройти безболезненно.

Бэкап AS COPY делает полную копию, и поэтому обязательно бы нарвался на битый блок
3 фев 12, 03:31    [12023497]     Ответить | Цитировать Сообщить модератору
 Re: обнаружение поврежденных блоков  [new]
expimp
Member

Откуда:
Сообщений: 573
Вячеслав Любомудров
Блок может быть отформатирован и распределен сегменту, но не использоваться (в списке свободных блоков для индекса). Тогда RMAN (с 10g) будет его пропускать при бэкапе (AS BACKUPSET). Тогда, кстати, и MOVE сегмента должен пройти безболезненно.

Бэкап AS COPY делает полную копию, и поэтому обязательно бы нарвался на битый блок



Я не пытаюсь решить проблему "на халяву". Третий день читаю все руководства по RMAN.
Но консультация желательна.

1. Выполнил backup as copy datafile на продуктиве и на стандбае. Но ошибки опять не проявились.

RMAN> run {
allocate channel backup_disk_dest_1 type disk format '/storage5320/backup1/prod/prod_standby_data/%U';
backup as copy datafile 18;
}
Starting backup at 03-FEB-12
channel backup_disk_dest_1: starting datafile copy
input datafile fno=00018 name=/ext-r5/prod/proddata/a_queue02.dbf
output filename=/storage5320/backup1/prod/prod_standby_data/data_D-PROD_I-164855137_TS-APPS_TS_QUEUES_FNO-18_rln2d1vk channel backup_disk_dest_1: datafile copy complete, elapsed time: 00:02:25
Finished backup at 03-FEB-12

Но все обращения к этой IOT таблице проваливаются на этом блоке. И select, и expdp, и dbms_stats.gather_table_stats


2. После выполнения backup database validate check logical в v$backup_corruption появился десяток новых записей
Но они отличаются тем, что
marked_corrupt NO
corruption_type UNKNOWN

И попытка обработать их RMAN> blockrecover ... выполняется, но ничего не меняется.
3 фев 12, 13:20    [12025938]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить