სიმპტომი:

გამოყენებისას DBCC CHECKDB ერთად REPAIR_ALLOW_DATA_LOSS პარამეტრი კორუმპირებული .MDF მონაცემთა ბაზის გამოსასწორებლად, მოსწონს ეს:

DBCC CHECKDB (xxxx, 'REPAIR_ALLOW_DATA_LOSS')

ხედავთ შეცდომის შემდეგ შეტყობინებას:

DBCC შედეგები 'xxxx' - ისთვის.
CHECKDB– მა მონაცემთა ბაზაში 'xxxx' აღმოაჩინა გამოყოფის 0 შეცდომა და 0 თანმიმდევრულობის შეცდომა.
ქალბატონი 824, დონე 24, მდგომარეობა 2, ხაზი 8
SQL Server გამოავლინა ლოგიკურ თანმიმდევრულობაზე დაფუძნებული I / O შეცდომა: არასწორი შემოწმება (მოსალოდნელია: 0xea8a9a2f; რეალური: 0x37adbfვ 8) ეს მოხდა მონაცემთა წაკითხვის დროს (1:28) მონაცემთა ბაზაში ID 39, 0x00000000038000 ოფსეტური ფაილი 'xxxx.mdf'. დამატებითი შეტყობინებები SQL Server შეცდომების ჟურნალი ან სისტემის მოვლენების ჟურნალი შეიძლება უფრო დეტალურადაა მოცემული. ეს არის მძიმე შეცდომის მდგომარეობა, რომელიც საფრთხეს უქმნის მონაცემთა ბაზის მთლიანობას და დაუყოვნებლივ უნდა გამოსწორდეს. დაასრულეთ მონაცემთა ბაზის თანმიმდევრულობის სრული შემოწმება (DBCC CHECKDB). ეს შეცდომა შეიძლება გამოწვეული იყოს მრავალი ფაქტორით; დამატებითი ინფორმაციისთვის იხილეთ SQL Server წიგნები ონლაინ რეჟიმში.

სადაც 'xxxx.mdf' არის კორუმპირებული MDF ფაილის შეკეთება. მიუხედავად იმისა, რომ CHECKDB ამბობს

CHECKDB– მა მონაცემთა ბაზაში 'xxxx' აღმოაჩინა გამოყოფის 0 შეცდომა და 0 თანმიმდევრულობის შეცდომა.

ეს ჯერ კიდევ თანმიმდევრულობის შეცდომაა (ქალბატონი 824) მონაცემთა ბაზაში.

შეცდომის შეტყობინების სკრინშოტი:

ლოგიკურ თანმიმდევრულობაზე დაფუძნებული I / O შეცდომა: არასწორი შემოწმება

თუ კორუფცია სერიოზულია, მაშინ იქნება უწყვეტი შეცდომის შეტყობინებები (ქალბატონი 824), როგორც ქვემოთ:

ქალბატონი 824, დონე 24, მდგომარეობა 6, ხაზი 2 SQL Server გამოავლინა ლოგიკურ თანმიმდევრულობაზე დაფუძნებული I / O შეცდომა: არასწორი შემოწმება (მოსალოდნელია: 0x3d17dfef; ფაქტობრივი: 0xd81748ef). ეს მოხდა მონაცემთა ბაზის ID 1 გვერდზე (0: 39) წაკითხვის დროს 0000000000000000 ოფსეტში ფაილი 'xxxx.mdf'. დამატებითი შეტყობინებები SQL Server შეცდომების ჟურნალი ან სისტემის მოვლენების ჟურნალი შეიძლება უფრო დეტალურადაა მოცემული. ეს არის მძიმე შეცდომის მდგომარეობა, რომელიც საფრთხეს უქმნის მონაცემთა ბაზის მთლიანობას და დაუყოვნებლივ უნდა გამოსწორდეს. დაასრულეთ მონაცემთა ბაზის თანმიმდევრულობის სრული შემოწმება (DBCC CHECKDB). ეს შეცდომა შეიძლება გამოწვეული იყოს მრავალი ფაქტორით; დამატებითი ინფორმაციისთვის იხილეთ SQL Server წიგნები ონლაინ რეჟიმში.

ქალბატონი 824, დონე 24, მდგომარეობა 6, ხაზი 4 SQL Server გამოავლინა ლოგიკურ თანმიმდევრულობაზე დაფუძნებული I / O შეცდომა: არასწორი შემოწმება (მოსალოდნელია: 0x3d17dfef; ფაქტობრივი: 0xd81748ef). ეს მოხდა მონაცემთა ბაზის ID 1 გვერდზე (0: 39) წაკითხვის დროს 0000000000000000 ოფსეტში ფაილი 'xxxx.mdf'. დამატებითი შეტყობინებები SQL Server შეცდომების ჟურნალი ან სისტემის მოვლენების ჟურნალი შეიძლება უფრო დეტალურადაა მოცემული. ეს არის მძიმე შეცდომის მდგომარეობა, რომელიც საფრთხეს უქმნის მონაცემთა ბაზის მთლიანობას და დაუყოვნებლივ უნდა გამოსწორდეს. დაასრულეთ მონაცემთა ბაზის თანმიმდევრულობის სრული შემოწმება (DBCC CHECKDB). ეს შეცდომა შეიძლება გამოწვეული იყოს მრავალი ფაქტორით; დამატებითი ინფორმაციისთვის იხილეთ SQL Server წიგნები ონლაინ რეჟიმში.

სადაც 'xxxx.mdf' არის კორუმპირებული MDF ფაილის შეკეთება.

შეცდომის შეტყობინების სკრინშოტი:

ცარიელი

თუ კორუფცია უფრო მწვავეა, თქვენ ხედავთ ქალბატონი 7909 შემდეგნაირად ქალბატონი 824:

DBCC შედეგები 'xxxx' - ისთვის.
CHECKDB– მა მონაცემთა ბაზაში 'xxxx' აღმოაჩინა გამოყოფის 0 შეცდომა და 0 თანმიმდევრულობის შეცდომა.
ქალბატონი 824, დონე 24, მდგომარეობა 2, ხაზი 8
SQL Server გამოავლინა ლოგიკურ თანმიმდევრულობაზე დაფუძნებული I / O შეცდომა: არასწორი შემოწმება (მოსალოდნელია: 0xcfcd2118; რეალური: 0x6fc599d6). ეს მოხდა მონაცემთა ბაზის ID 1 გვერდზე (1: 39) წაკითხვის დროს 0x00000000002000 ოფსეტური ფაილი 'xxxx.mdf'. დამატებითი შეტყობინებები SQL Server შეცდომების ჟურნალი ან სისტემის მოვლენების ჟურნალი შეიძლება უფრო დეტალურადაა მოცემული. ეს არის მძიმე შეცდომის მდგომარეობა, რომელიც საფრთხეს უქმნის მონაცემთა ბაზის მთლიანობას და დაუყოვნებლივ უნდა გამოსწორდეს. დაასრულეთ მონაცემთა ბაზის თანმიმდევრულობის სრული შემოწმება (DBCC CHECKDB). ეს შეცდომა შეიძლება გამოწვეული იყოს მრავალი ფაქტორით; დამატებითი ინფორმაციისთვის იხილეთ SQL Server წიგნები ონლაინ რეჟიმში.
ქალბატონი 7909, დონე 20, მდგომარეობა 1, ხაზი 8
ავარიული რეჟიმის შეკეთება ვერ მოხერხდა. სარეზერვო ასლის აღდგენა გჭირდებათ.

სადაც 'xxxx' არის მონაცემთა ბაზის სახელი და 'xxxx.mdf' მონაცემთა ბაზის ფიზიკური ფაილის სახელი.

შენიშვნა ქალბატონი 7909 მწვავე შეცდომაა, რომელიც შეიძლება მოხდეს მრავალ სიტუაციაში SQL Server ვფიქრობ, მონაცემთა ბაზა არ არის აღდგენა.

შეცდომის შეტყობინების სკრინშოტი:

ცარიელი

ზუსტი განმარტება:

მონაცემები MDF ფაილში ინახება როგორც 8KB გვერდები. თითოეულ გვერდს აქვს არასავალდებულო საკონტროლო ველი.

თუ DBCC CHECKDB ბრძანება აღმოაჩენს საკონტროლო მნიშვნელობას სათაურის გვერდზე, PFS გვერდი და მონაცემთა ზოგიერთი გვერდი არასწორია და მას არ შეუძლია შეცვალოს პრობლემა, მაშინ იგი შეატყობინებს ამ შეცდომას (ქალბატონი 824) თუ კორუფცია სერიოზულია, შეიძლება იყოს უწყვეტი შეცდომები (ქალბატონი 824) ან მოჰყვა სხვა შეცდომას (ქალბატონი 7909).

შეგიძლიათ გამოიყენოთ ჩვენი პროდუქტი DataNumen SQL Recovery მონაცემების აღდგენა კორუმპირებული MDF ფაილიდან და ამ შეცდომის მოსაგვარებლად.

ფაილების ნიმუში:

კორუმპირებული MDF ფაილების ნიმუში, რომელიც შეცდომას გამოიწვევს (ერთჯერადი Msg 824 შეცდომა):

SQL Server ვერსია კორუმპირებული MDF ფაილი MDF ფაილი დაფიქსირდა DataNumen SQL Recovery
SQL Server 2014 შეცდომა 1_3.mdf შეცდომა 1_3_fixed.mdf

კორუმპირებული MDF ფაილების ნიმუში, რომელიც შეცდომას გამოიწვევს (უწყვეტი Msg 824 შეცდომები):

SQL Server ვერსია კორუმპირებული MDF ფაილი MDF ფაილი დაფიქსირდა DataNumen SQL Recovery
SQL Server 2014 შეცდომა 1_1.mdf შეცდომა 1_1_ფიქსირებული. mdf

კორუმპირებული MDF ფაილების ნიმუში, რომელიც შეცდომას გამოიწვევს (Msg 824 შეცდომას მოყვება Msg 7909 შეცდომა):

SQL Server ვერსია კორუმპირებული MDF ფაილი MDF ფაილი დაფიქსირდა DataNumen SQL Recovery
SQL Server 2014 შეცდომა 1_2.mdf შეცდომა 1_2_fixed.mdf

 

წყაროები:

1. https://docs.microsoft.com/en-us/sql/relational-databases/errors-events/mssqlserver-824-database-engine-error?view=sql-server-ver15