február 5, 2022

mi blokk korrupció & hogyan tudjuk megoldani blokk korrupció

X

Adatvédelmi és cookie-k

ezen az oldalon cookie-kat használunk. Folytatás, Ön elfogadja azok használatát. Tudj meg többet, beleértve a sütik ellenőrzését is.

értem!

Ads

a napi informatikai folyamat, sok lehetséges oka a blokk korrupció, beleértve:

– rossz Io hardver / firmware
– OS problémák

a közzététel megkezdése előtt hadd emlékeztessem önöket, hogy hány korrupció van… 2 típusú korrupció létezik. Az adatok korrupciója fizikai vagy logikai korrupcióként nyilvánulhat meg.

tehát definiáljuk mindazokat,

a blokk fizikai sérülése érvénytelen ellenőrző összegként vagy fejlécként jelenik meg, vagy amikor a blokk tartalmazza az összes nullát. Amikor ez megtörténik, Az adatbázis nem ismeri fel a blokkot érvényes Oracle blokkként, annak tartalmától függetlenül. A fizikai korrupció (média korrupt blokkok) olyan blokkok, amelyek nyilvánvaló fizikai károkat szenvedtek. Ha az Oracle inkonzisztenciát észlel a blokk fejlécében lévő CSN és a blokk láblécében lévő CSN között, vagy a várt fejléc és lábléc struktúrák nincsenek jelen, vagy el vannak vágva, akkor az Oracle munkamenet kivételt vet fel a blokk olvasása után (ORA-01578: ORACLE data block corrupted…). A fizikai korrupciót média korrupciónak is nevezik.

● Logikai Korrupció történik, ha egy adat a blokk egy érvényes ellenőrző, stb., de a blokk tartalma logikailag következetlen. A logikai blokk sérülése akkor is előfordulhat, ha a blokk eleje alatti szerkezet (a blokk fejléc alatt) sérült. Ebben az esetben a blokk ellenőrző összege helyes, de a blokkstruktúrák megsérülhetnek. A logikai korrupció az elveszett írásból is származhat.

további információkért lásd az Oracle Support 840978.1.számú megjegyzését.

tehát?? Mikor kaphatja meg ezt a hibaüzenetet? Lehet, hogy nem kapott hibaüzenetet hozzáférés közben sérült blokkokat, amíg a hozzáférés kapcsolódó blokkok

– elemzése tábla .. Érvényesítése szerkezet
– Dbverify
– CTA– k(Create table as Select)
– Export
– közben rman folyamat

mindazok Adatbázis segédprogramok feltölti V$DATABASE_BLOCK_CORRUPTION a korrupció észlelése:

viselkedés 9i és 10g, a nézet v$database_block_corruption használt, hogy lakott csak akkor, ha RMAN Backup érvényesítése&logikai érvényesítés ellenőrzése parancs futott.

a kitöltött információ csak akkor frissül fel, ha a sérülést kijavították (media recovery/Object leesett), majd az rman Backup validate /check logical validate parancsot újra futtatták az adatbázisban vagy az érintett adatfájlban.

11g esetén ez a viselkedés megváltozott.Ha bármely adatbázis-segédprogram vagy folyamat intrablock-sérüléssel találkozik, automatikusan rögzíti azt a V$DATABASE_BLOCK_CORRUPTION fájlban.

a javítás eltávolítja a sérült blokkok metaadatait a nézetből.

a sérült blokkot tartalmazó objektumokat egy ilyen lekérdezéssel azonosíthatja

SELECT DISTINCT owner, segment_name FROM v$database_block_corruption dbc JOIN dba_extents e ON dbc.file# = e.file_id AND dbc.block# BETWEEN e.block_id and e.block_id+e.blocks-1 ORDER BY 1,2;

vagy használhatja :

select * from V$DATABASE_BLOCK_CORRUPTION; << get file#&block from here
SELECT segment_type, segment_name
FROM dba_extents
WHERE file_id = 1
AND block_id < 3840
AND block_id + blocks >= 3840;
SEGMENT_TYPE SEGMENT_NAME
—————– —————————————-
INDEX I_SOURCE1

vagy használja:

SELECT segment_type, segment_name
FROM dba_extents
WHERE file_id = 1
AND 3840 BETWEEN block_id AND block_id + blocks -1;

vagy

select 'SELECT tablespace_name, segment_type, owner, segment_name FROM dba_extents WHERE file_id = ' || FILE# || ' and ' || BLOCK# || ' between block_id AND block_id + blocks – 1;' from v$database_block_corruption order by 1;

javítási technikák közé tartozik:

– blokk média recovery,
– visszaállítása adatfájlok,
– helyreállítása révén inkrementális mentést, és blokk newing,
– Export&import
– Táblázat létrehozása .. Mint válassza ki a parancsot.

ne felejtsük el, hogy a blokk média helyreállítása javíthatja a fizikai korrupciót, de nem logikai korrupciót.

Blokksérülés ellenőrzése a VALIDATE paranccsal
szintaxis az Rman Validate parancshoz: –

adatbázishoz :

RMAN > Validate database;

adatfájl esetében:

RMAN > Validate datafile <file no>,<file no> ;

Adatblokkhoz :

RMAN > Validate datafile <file no> block <Block no> ;

Archivelog visszaállítja a blokk Media Recovery (BMR)lehet futtatni párhuzamosan több csatornán, de datafile / backupset vizsgál, és a helyreállítási munkamenet kell futtatni ugyanazon a szerveren.

annak érdekében, hogy kiválaszthassa, melyik biztonsági másolatot használja a kívánt blokkok kiválasztásához, a blokk helyreállítása parancs támogatja a visszaállítás parancsban használt opciókat:

FROM BACKUPSET–> restore blocks from backupsets onlyFROM DATAFILECOPY–> restore blocks from datafile copies onlyFROM TAG–>restore blocks from tagged backupRESTORE UNTIL TIME|SCN|LOGSEQ

tehát a db érvényesítése után hogyan tudjuk helyreállítani a kapcsolódó korrupciót? Íme néhány példa:

helyreállítás Explicit fájl/blokk használatával:

$ rman target / log=rman1.log

RMAN> blockrecover datafile 12 block 4207;

helyreállítás a korrupciós lista használatával:

$ rman target / log=rman1.log 
RMAN> blockrecover corruption list;

a sérült adatok észlelésének és megelőzésének kulcsfontosságú megközelítése a következő MAA legjobb gyakorlatok végrehajtása.

• használja az Oracle Data Guard-ot
• állítsa be az Oracle Database block corruption detection paramétereit
• végezzen biztonsági mentési és helyreállítási stratégiát a Recovery Manager (RMAN) segítségével

túl sok olyan dokumentum áll rendelkezésre a metalink-nél, amelyek mélyen megmagyarázzák a koncepciót a korrupciós példákkal. Tehát erősen javaslom, hogy tekintse át az alábbi dokumentumokat, miközben hasonló hibákat üt a rendszerén:

kezelése Oracle blokk korrupciók Oracle7/8/8i/9i/10g/11g
mester Megjegyzés kezelésére Oracle adatbázis korrupciós problémák
Data Recovery Advisor – korrupció útmutató
RMAN : blokk szintű Média Recovery-koncepció & példa
OERR: ORA – 1578 “ORACLE adatblokk sérült (file # %s, block # %s)” mester Megjegyzés
az Ora-1110 hibaelhárítása és megoldása
11g új funkció v$database_block_corruption fejlesztések és rman validate parancs
http://www.oracle.com/technetwork/database/availability/maa-datacorruption-bestpractices-396464.pdf
Reklamlar

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.