22.03.2010 17:49
Виталий Г.
 
Индекс пересоздался успешно.
Спасибо!
22.03.2010 17:52
Виталий Г.
 
Виной всему аппаратный сбой - вылетел один винт в рейде.
06.11.2012 23:58
Stels
 
Oracle 9i, энтерпрайз
Windows Server 2003 R2 sp2
база на массиве из двух винтов в зеркале
ошибок файловой структуры нет, массив в порядке
СМ 1.028.2 sp11
база магазина
база не в архивлоге
rman не работал
есть копии базы на холодную (останавливалась база и архивировались файлы)

появилась ошибка:
Код:
alter tablespace "USERS" coalesce
Completed: alter tablespace "USERS" coalesce
Hex dump of Absolute File 6, Block 103111 in trace file d:\oracle\admin\kras05\udump\kras05_ora_1752.trc
***
Corrupt block relative dba: 0x018192c7 (file 6, block 103111)
Fractured block found during buffer read
Data in bad block -
 type: 6 format: 2 rdba: 0x018192c7
 last change scn: 0x0000.3082c115 seq: 0x2 flg: 0x04
 consistency value in tail: 0xde0b0602
 check value in block header: 0x68c8, computed block checksum: 0xe618
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x018192c7 (file 6, block 103111) found same corrupted data
Код:
SQL> SELECT segment_name , segment_type , owner , tablespace_name
  2   FROM sys.dba_extents
  3   WHERE file_id = 6
  4   AND 103111 BETWEEN block_id and block_id + blocks-1;

SEGMENT_NAME
--------------------------------------------------------------------------------
SEGMENT_TYPE       OWNER                          TABLESPACE_NAME
------------------ ------------------------------ ------------------------------
SMSPECCASHDISC
TABLE              SUPERMAG                       USERS
Код:
dbv.exe file='d:\oracle\oradata\kras05\user02.DBF' blocksize=8192 logfile=e:\2.log


DBVERIFY: Release 9.2.0.8.0 - Production on Втн Ноя 6 22:13:05 2012

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


DBVERIFY - Запуск верификации : FILE = d:\oracle\oradata\kras05\users02.DBF
Стр. 103111 - influx - скорее всего нарушен носитель
***
Corrupt block relative dba: 0x018192c7 (file 6, block 103111)
Fractured block found during dbv: 
Data in bad block -
 type: 6 format: 2 rdba: 0x018192c7
 last change scn: 0x0000.3082c115 seq: 0x2 flg: 0x04
 consistency value in tail: 0xde0b0602
 check value in block header: 0x68c8, computed block checksum: 0xe618
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***


DBVERIFY - Верификация завершена

Всего страниц проверено         : 414208
Всего страниц обработано (Data) : 383179
Всего сбойных страниц  (Data) : 0
Всего страниц обработано(Index): 20791
Всего сбойных страниц (Index): 0
Всего обработанных страниц (другие): 7317
Всего обработано страниц (сег.)  : 0
Всего страниц со сбоями (сег.)  : 0
Всего пустых страниц             : 2920
Всего страниц, помеч.наруш.   : 1
Всего входных страниц            : 1
Highest block SCN            : 814863509 (0.814863509)
SMSpecCashDisc – Спецификация кассовых документов, скидки по артикулам

Оптимайзер работает (собственно он письмом и кинул эту ошибку)
Код:
05.11.12 02:14:52 -- Table : SUPERMAG.SMSPECCASHDISC Size : 124Mb
05.11.12 02:14:53 -- Standart optimization... 59
05.11.12 02:14:58 -- OLEGON-ERROR! : Query:10.0.0.200:KRAS05:java.sql.SQLException: ORA-01578: ORACLE data block corrupted (file # 6, block # 103111)
ORA-01110: data file 6: 'D:\ORACLE\ORADATA\KRAS05\USERS02.DBF'

05.11.12 02:14:59 -- **************************************************************
05.11.12 02:14:59 -- Gathering list of invalid indexes
05.11.12 02:14:59 -- **************************************************************
05.11.12 02:14:59 -- Partitions and subpartitions state check
05.11.12 02:14:59 -- **************************************************************
05.11.12 02:14:59 -- Gathering list of invalid index partitions
05.11.12 02:15:00 -- **************************************************************
05.11.12 02:15:00 -- Gathering list of invalid index subpartitions
05.11.12 02:15:00 -- Index rebuilding completed...
05.11.12 02:15:00 -- **************************************************************
05.11.12 02:15:00 -- Gather stats... Table : "SUPERMAG"."SMSPECCASHDISC"
05.11.12 02:15:00 -- Compute...
05.11.12 02:15:26 -- OLEGON-ERROR! : Query:10.0.0.200:KRAS05:java.sql.SQLException: ORA-01578: ORACLE data block corrupted (file # 6, block # 103111)
ORA-01110: data file 6: 'D:\ORACLE\ORADATA\KRAS05\USERS02.DBF'
возможно ли восстановить?
или в морг?
восстановить копию и переслать недостающее из CO?
(живой бэкап есть трёхдневный)
07.11.2012 07:42
OlegON
 
думаю, что в морг. база магазинная тем более, а куска данных не хватает. и да, из ЦО...
только ты уверен, что бекап целый? холодный бекап тем и зловреден, что такие ошибки не ловит. она, может, уже давно там засела...
07.11.2012 11:22
Stels
 
ну я файлики dbv.exe проверил ... без ошибок
07.11.2012 11:23
Mtirt
 
Писали уже много раз: если размер файла больше 2Гб, то dbv.exe не показатель.
23.06.2013 04:14
Tiger
 
Имеется следующая ошибка:

сообщение: "ORA-01578: разрушен блок данных ORACLE (файл # 6, блок # 26033)
ORA-01110: файл данных 6: 'E:\ORACLE\ORADATA\PRIVOZVS\INDX+1.DBF'
ORA-26040: Блок данных был загружен с использованием режима NOLOGGING
"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 1578
источник: Microsoft OLE DB Provider for Oracle

----- Причина исключения, уровень вложения 1 -----
сообщение: "SELECT --+ FIRST_ROWS
DH.ID as ID, DH.CreatedAt, CL.Name as ClientName, DH.LocationTo, DH.OpCode as Operation, DH.UserOp, DH.TotalSum, To_Char(DH.Debt)||' '||0 as Payment, DH.BaseDocTypeAndID, DH.DocState, (select (select nvl(Sum(SPECV.TotalPrice), 0) from Supermag.SVSpecWI SPECV where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID) - (select nvl(Sum(SVAT.TaxSum), 0) from Supermag.SVSpecVatWI SVAT where SVAT.DocType = DH.DocType and SVAT.DocID = DH.ID and SVAT.TaxRate > 0) from Dual) as TotalSumNoVat, (select nvl(Sum(SVAT10.TaxSum), 0) from Supermag.SVSpecVatWI SVAT10 where SVAT10.DocType = DH.DocType and SVAT10.DocID = DH.ID and SVAT10.TaxRate = 10) as TotalSumVat10, (select nvl(Sum(SVAT20.TaxSum), 0) from Supermag.SVSpecVatWI SVAT20 where SVAT20.DocType = DH.DocType and SVAT20.DocID = DH.ID and SVAT20.TaxRate = 20) as TotalSumVat20, (select 'занят' from Supermag.SSLocks P where P.ID = DH.ID and P.ObjType = DH.DocType) as Occupy , DH.SupplierDoc, DH.SupplierInvoice, DH.PayCash, DH.GoodsOwner, (Select max(decode(ParamName,'System.Correction',1,0)) as Correction from Supermag.SMDocProps L where L.DocType=DH.DocType and L.DocID=DH.ID and L.ParamName = 'System.Correction') as Correction, DH.OurselfClientName, DH.ChildDocTypeAndID, decode(DH.isRoubles,1,0,DH.CurrencyType) as isRoubles, DH.TotalSumCur as TotalSumCur, (select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = DH.CurrencyType) as CurrencyType, case when DH.CurrencyType > 0 then (to_char(DH.CurrencyRate) || ' ' ||(select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = 0) ||' за ' || to_char(power(10, DH.CurrencyMultOrder)) || ' ' ||(select CU.ShortName from Supermag.SMCurrencies CU where CU.ID = DH.CurrencyType)) else NULL end as CurrencyRate, (select FileName||' '||to_char(Amount) from Supermag.SVInsertedDocsWI DI where DI.DocType = DH.DocType and DI.ID = DH.ID and rownum = 1 ) as InsertedDocs, DH.SupplDocSum, DH.FinBaseDocTypeAndID, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=10) as TotalSumNoVat10, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=20) as TotalSumNoVat20, DH.GrossWeight, (select nvl(Sum(SVAT18.TaxSum), 0) from Supermag.SVSpecVatWI SVAT18 where SVAT18.DocType = DH.DocType and SVAT18.DocID = DH.ID and SVAT18.TaxRate = 18) as TotalSumVat18, (select nvl(sum(SPECV.TotalPriceNoTax), 0) from Supermag.SVSpecWI SPECV, Supermag.SVSpecVatWI SVAT where SPECV.DocType = DH.DocType and SPECV.DocID = DH.ID and SVAT.DocType = SPECV.DocType and SVAT.DocID = SPECV.DocID and SVAT.SpecItem = SPECV.SpecItem and SVAT.TaxRate=18) as TotalSumNoVat18, DH.SupplInvoiceCreate, DH.FinDate, DH.TotalSumVat, DH.TotalSumVat+DH.TotalSumSpec as TotalSumWithVat,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Артикул') as Label__0,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Вниманию аналитика!') as Label__1,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Вниманию оператора:') as Label__2,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Комментарий') as Label__3,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Sys.RefuseWI') as Label__4,(Select ValStr from Supermag.SVDocLabels L where L.DocType=DH.DocType
and L.DocID=DH.ID and L.LabelID='Проверка') as Label__5 FROM SuperMag.SVDocumentsWI DH , SuperMag.SMClientInfo CL WHERE DH.DocType = 'WI' AND DH.CreatedAt = TO_DATE('20130622','YYYYMMDD') AND (CL.ID(+)= DH.ClientIndex) "
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmLibaryBase trace

Выполнил запрос:
Цитата:
select * from v$database_block_corruption;
Результат:
Цитата:
15759 rows selected.
Выполнил запрос:

Цитата:
SELECT SEGMENT_TYPE,OWNER||'.'||SEGMENT_NAME FROM DBA_EXTENTS where 6=file_id and 26033 BETWEEN BLOCK_ID AND BLOCK_ID+BLOCKS-1;
Результат :
Цитата:
INDEX
SUPERMAG.SMCWAYBILLSIN_PK
Выполнил
Цитата:
alter index SUPERMAG.SMCWAYBILLSIN_PK unusable;
alter index SUPERMAG.SMCWAYBILLSIN_PK rebuild;
Появилась новая ошибка, связанная с другим поврежденным блоком! Как быть дальше?

Выполнил скрипт на проверку поврежденных сегментов:
Цитата:
SELECT distinct d.SEGMENT_TYPE||':'||d.OWNER||'.'||d.SEGMENT_NAME
FROM DBA_EXTENTS d, v$database_block_corruption b
where b.file#=d.file_id and b.block# between d.block_id and d.block_id+d.blocks-1
Результат:
Цитата:
D.SEGMENT_TYPE||':'||D.OWNER||'.'||D.SEGMENT_NAME
--------------------------------------------------------------------------------

INDEX:SUPERMAG.SMCCALCERGRAPHS_PK
INDEX:SUPERMAG.SACANALYTICSGROUP_PK
INDEX:SUPERMAG.SACANALYTICSFIELDS_PK
INDEX:SUPERMAG.SPCORETHEADERLOC_PK
INDEX:SUPERMAG.SACPAYORDERSNO_PK
INDEX:SUPERMAG.SMCROLLS_ORDERUNIQUE
INDEX:SUPERMAG.SMCPROCESSHEADERINVT_GUID
INDEX:SUPERMAG.SMCROUTEDESCRIPTION_PK
INDEX:SUPERMAG.SMCROUTEDETAIL_PK
INDEX:SUPERMAG.SMCCARDMATRIX_PK
INDEX:SUPERMAG.SMPLANOGRAMMAZONE_CLASS

D.SEGMENT_TYPE||':'||D.OWNER||'.'||D.SEGMENT_NAME
--------------------------------------------------------------------------------

INDEX:SUPERMAG.SMBONUSACT_CLIENT
INDEX:SUPERMAG.SMCSPECBA_BASEDOC
INDEX:SUPERMAG.FSCLASTOR_PK
INDEX:SUPERMAG.SMPROCESSLOGORCV_PK
INDEX:SUPERMAG.SPCALCOHEADER_U
INDEX:SUPERMAG.SACCARDMATRIXCLASS_PK
INDEX:SUPERMAG.SMCSPECPRODUCERS_PK
INDEX SUBPARTITION:SUPERMAG.FFMAPREP_LOCFROM

1031 rows selected.
Подскажите план действии в данной ситуации!
23.06.2013 04:16
whitewizard
 
экспорт полный не делал?
23.06.2013 04:41
Tiger
 
Цитата:
whitewizard экспорт полный не делал?
Я как бы совсем не в теме! Можно поподробнее! Имеется виду экспорт базы в новосозданную или как?
23.06.2013 04:52
whitewizard
 
ну да. поищи по форуму тему в части перехода с 9 оракла на 10
Код:
set nls_lang=american_america.cl8mswin1251
exp.exe userid=sys/qqq@db2000 FULL=Y feedback=10000 consistent=y compress=n file=essen01.dmp log=log_e.txt
и
Код:
set nls_lang=american_america.cl8mswin1251
imp.exe userid=sys/qqq@db2000 full=y feedback=10000 ignore=y commit=y file=essen01.dmp log=log_i.txt
у тебя бэкап как делается?
Часовой пояс GMT +3, время: 15:54.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.