בעת שימוש במיקרוסופט SQL Server כדי לצרף או לגשת לקובץ מסד נתונים MDF פגום, אתה עלול להיתקל במגוון הודעות שגיאה שעלולות לבלבל. להלן, נפרט את כל השגיאות, ממוינות לפי תדירות. עבור כל שגיאה, נתאר את הסימפטומים שלה, נסביר את הסיבה המדויקת ונספק קבצים לדוגמה יחד עם הקבצים שתוקנו על ידי DataNumen SQL Recovery. זה יעזור לך להבין טוב יותר את השגיאות הללו. הערה 'xxx.MDF' ייצג את השם של המושחת שלך SQL Server קובץ מסד נתונים MDF.
בהתבסס על SQL Server או CHECKDB הודעות שגיאה, ישנם שלושה סוגים של שגיאות:
-
- שגיאות הקצאה: אנו יודעים שהנתונים בקבצי MDF ו-NDF מוקצים כ דפים. ויש כמה דפים מיוחדים המשמשים לניהול ההקצאות, כדלקמן:
סוג עמוד | תיאור |
עמוד GAM | אחסן מידע על מפת ההקצאה הגלובלית (GAM). |
עמוד SGAM | אחסן מידע משותף של מפת הקצאה גלובלית (SGAM). |
עמוד IAM | חנות מידע על מפת הקצאת אינדקס (IAM). |
עמוד PFS | אחסן מידע על הקצאת PFS. |
אם באחד מדפי ההקצאה לעיל יש שגיאות, או שהנתונים המנוהלים על ידי דפי ההקצאה הללו אינם עולים בקנה אחד עם מידע ההקצאה, אז SQL Server או CHECKDB ידווח טעויות הקצאה.
- שגיאות עקביות: בעד דפים המשמשים לאחסון נתונים, כולל דפי הנתונים ודפי האינדקס, אם SQL Server או CHECKDB ימצאו חוסר עקביות בין תוכן העמוד לסכום הבדיקה, ואז הם ידווחו שגיאות עקביות.
- כל שאר השגיאות: ייתכנו שגיאות אחרות שאינן נכללות בשתי הקטגוריות לעיל.
- xxxx.mdf אינו קובץ מסד נתונים ראשי. (מיקרוסופט SQL Server, שגיאה: 5171)
- הכותרת של הקובץ 'xxxx.mdf' אינה כותרת חוקית של קובץ מסד נתונים. המאפיין FILE SIZE שגוי. (Microsoft SQL Server, שגיאה:5172)
- SQL Server זיהה שגיאת קלט/פלט מבוססת עקביות לוגית: סכום ביקורת שגוי
- SQL Server זיהה שגיאת קלט/פלט מבוססת עקביות לוגית: דף קרוע
- אתה מוחק כמה רשומות או כמה טבלאות במסד הנתונים בטעות.
SQL Server יש כלי מובנה בשם DBCC, שיש CHECKDB ו טבלת ביקורת אפשרויות שיכולות לעזור לתקן מסד נתונים MDF פגום. עם זאת, עבור קבצי מסד נתונים MDB פגומים חמורים, DBCC CHECKDB ו טבלת ביקורת גם ייכשל.
שגיאות עקביות שדווחו על ידי CHECKDB:
- SQL Server זיהה שגיאת קלט/פלט מבוססת עקביות לוגית: סכום ביקורת שגוי
- לשורה ב-sys.xxx אין שורה תואמת ב-sys.xxx.
- שגיאת טבלה: מזהה אובייקט ##, מזהה אינדקס ## ייבנה מחדש.
- לא ניתן ליצור מחדש אינדקס טבלת מערכת זה.
- מזהה אובייקט ##, מזהה אינדקס ##, מזהה מחיצה ##, מזהה יחידה ## (סוג לא ידוע), מזהה עמוד (##:560) מכיל מזהה עמוד שגוי בכותרת העמוד שלו.
שגיאות הקצאה שדווחו על ידי CHECKDB:
- דף הקצאת אינדקס (IAM) מצביע על ידי המצביע הבא של עמוד IAM
- היקף (##:##) במזהה מסד נתונים ## מסומן שהוקצה ב-GAM, אך אף SGAM או IAM לא הקצו אותו.
כל השגיאות האחרות שדווחו על ידי CHECKDB:
- נכשל:(-#######) ביצוע השאילתה "DBCC CHECKDB(xxxx) WITH NO_INFOMSGS" נכשל עם השגיאה הבאה: "xxxx".
- שגיאת קלט/פלט (מזהה דף רע) זוהתה במהלך קריאה בהיסט 0x###### בקובץ 'xxxx.mdf'.
- המערכת לא הצליחה להפעיל מספיק ממסד הנתונים כדי לבנות מחדש את היומן
- אובדן נתונים בעת תיקון עם CHECKDB
- נראה שהקובץ נחתך על ידי מערכת ההפעלה.
- במהלך ביצוע מחדש של פעולה שנרשמה במסד הנתונים 'xxxx', אירעה שגיאה במזהה רשומת יומן.