Unapotumia Microsoft SQL Server kuambatisha au kupata faili ya hifadhidata ya MDF, utaona jumbe kadhaa za makosa, ambayo inaweza kukuchanganya. Kwa hivyo, hapa tutajaribu kuorodhesha makosa yote yanayowezekana, yaliyopangwa kulingana na masafa yao yanayotokea. Kwa kila kosa, tutaelezea dalili yake, kuelezea sababu yake sahihi na kutoa faili za sampuli na faili iliyowekwa na yetu DataNumen SQL Recovery, ili uweze kuzielewa vizuri. Hapo chini tutatumia 'xxx.MDF' kuelezea ufisadi wako SQL Server Jina la faili la hifadhidata la MDF.
Kulingana na SQL Server au ujumbe wa makosa wa CHECKDB, kuna aina tatu za makosa ambayo itasababisha kutofaulu:
-
- Hitilafu za ugawaji: Tunajua data katika faili za MDF & NDF zimetengwa kama kurasa. Na kuna kurasa maalum ambazo hutumiwa kwa usimamizi wa ugawaji, kama ifuatavyo:
Aina ya Ukurasa | Maelezo |
Ukurasa wa GAM | Hifadhi maelezo ya ramani ya ugawaji wa ulimwengu (GAM). |
Ukurasa wa SGAM | Hifadhi maelezo ya ramani ya mgawanyo wa kimataifa (SGAM) iliyoshirikiwa. |
Ukurasa wa IAM | Ramani ya ugawaji wa faharisi ya duka (IAM). |
Ukurasa wa PFS | Hifadhi maelezo ya mgao wa PFS. |
Ikiwa ukurasa wowote wa mgao hapo juu una makosa, au data inayosimamiwa na kurasa hizi za mgao haiendani na habari ya mgao, SQL Server au CHECKDB itaripoti makosa ya ugawaji.
- Makosa ya uthabiti: kwa kurasa ambazo hutumiwa kuhifadhi data, pamoja na kurasa za data na kurasa za faharisi, ikiwa SQL Server au CHECKDB hupata kutofautiana kati ya yaliyomo kwenye ukurasa na checksum, basi wataripoti makosa ya uthabiti.
- Makosa mengine yote: Kunaweza kuwa na makosa mengine hayakuanguka katika kategoria mbili hapo juu.
- xxxx.mdf sio faili ya msingi ya hifadhidata. (Microsoft SQL Server, Kosa: 5171)
- Kichwa cha faili 'xxxx.mdf' sio kichwa cha faili halali cha hifadhidata. Mali ya SIZE ya FILE si sahihi. (Microsoft SQL Server, Kosa: 5172)
- SQL Server iligundua hitilafu ya mantiki ya msingi wa I / O: checksum isiyo sahihi
- SQL Server iligundua hitilafu ya mantiki ya msingi wa I / O: ukurasa uliovunjika
- Unafuta rekodi zingine au meza kadhaa kwenye hifadhidata kwa makosa.
SQL Server ina chombo kilichojengwa ndani kinachoitwa DBCC, ambayo ina CHECKDB na ANAVYOONEKANA chaguzi ambazo zinaweza kusaidia kukarabati hifadhidata ya MDF. Walakini, kwa faili kali za hifadhidata za MDB, DBCC CHECKDB na ANAVYOONEKANA pia itashindwa.
Makosa ya uthabiti yaliyoripotiwa na CHECKDB:
- SQL Server iligundua hitilafu ya mantiki ya msingi wa I / O: checksum isiyo sahihi
- Safu katika sys.xxx haina safu inayolingana katika sys.xxx.
- Kosa la jedwali: Kitambulisho cha kitu # #, kitambulisho cha faharisi # # kitajengwa upya.
- Faharisi ya jedwali la mfumo haiwezi kufanywa tena.
- Kitambulisho cha kitu # #, kitambulisho cha kitambulisho # #, kitambulisho cha kizigeu ##, kitengo cha kitengo # # (aina isiyojulikana), kitambulisho cha ukurasa (# #: 560) kina kitambulisho cha ukurasa kisicho sahihi katika kichwa cha ukurasa wake.
Makosa ya ugawaji yaliyoripotiwa na CHECKDB:
- Ramani ya Ugawaji wa Kielelezo (IAM) Ukurasa umeelekezwa na Pointer inayofuata ya Ukurasa wa IAM
- Upeo (##: ##) katika kitambulisho cha hifadhidata # # imewekwa alama kwenye GAM, lakini hakuna SGAM au IAM imeitenga.
Makosa mengine yote yaliyoripotiwa na CHECKDB:
- Imeshindwa: (- # # # # # # #) Kutekeleza swala "DBCC CHECKDB (xxxx) NA NO_INFOMSGS" imeshindwa na kosa lifuatalo: "xxxx".
- Hitilafu ya I / O (kitambulisho kibaya cha ukurasa) iligunduliwa wakati wa kusoma kwa kukabiliana 0x ###### katika faili 'xxxx.mdf'.
- Mfumo Haukuweza Kuamilisha Kutosha Kwa Hifadhidata Ili Kujenga Rekebisha tena
- Kupoteza Takwimu Unapotengeneza na CHECKDB
- Faili inaonekana kupunguzwa na mfumo wa uendeshaji.
- Wakati wa kufanya upya kazi iliyoingia kwenye hifadhidata 'xxxx', hitilafu ilitokea kwenye kitambulisho cha rekodi ya kumbukumbu.