1. Hiểu về lỗi hỏng tệp MDF
Các tập tin MDF là nền tảng của SQL ServerCơ chế lưu trữ dữ liệu của. Các thành phần quan trọng này cần được phát hiện nhanh chóng và có phương pháp phục hồi phù hợp khi bị hỏng để giảm thiểu mất dữ liệu. Hãy cùng tìm hiểu về các tệp MDF và cách sửa chữa các tệp MDF bị hỏng.
1.1 Tệp MDF là gì trong SQL Server?
MDF (Tệp cơ sở dữ liệu chính) đóng vai trò là tệp dữ liệu chính trong SQL Server chứa tất cả dữ liệu người dùng như bảng, chỉ mục, thủ tục được lưu trữ, chế độ xem và các đối tượng cơ sở dữ liệu khác. Tệp này có cả lược đồ và dữ liệu thực tế, khiến nó trở thành tệpost phần quan trọng của bất kỳ SQL Server cơ sở dữ liệu. Phần mở rộng .mdf xác định tệp chính này hoạt động cùng với các tệp nhật ký (.ldf). Các tệp nhật ký này theo dõi thông tin giao dịch cần thiết cho các hoạt động khôi phục.
1.2 Nguyên nhân phổ biến gây hỏng tệp MDF
Tệp MDF của bạn có thể bị hỏng vì một số lý do sau:
- Mất điện hoặc không đúng cách SQL Server tắt máy
- Lỗi phần cứng, đặc biệt là các vấn đề về hệ thống lưu trữ
- Các sector xấu trên ổ lưu trữ
- Phần mềm độc hại hoặc vi-rút tấn công vào hệ thống không được bảo vệ
- Lỗi hệ thống tập tin ảnh hưởng đến lưu trữ cơ sở dữ liệu
- Lỗi phần mềm trong SQL Server chính nó
Hệ thống bị sập trong khi đang thực hiện các hoạt động cơ sở dữ liệu có thể làm tăng đáng kể nguy cơ hỏng hóc vì chúng có thể dừng các hoạt động ghi quan trọng.
1.3 Mẹo hữu ích để ngăn ngừa hỏng tệp MDF
Sau đây là cách bạn có thể bảo vệ các tệp MDF của mình khỏi bị hỏng:
- Tạo bản sao lưu thường xuyên và tự động kiểm tra tính toàn vẹn của chúng
- Sử dụng CHECKSUM làm tùy chọn Xác minh trang cho tất cả cơ sở dữ liệu
- Chạy lệnh BACKUP DATABASE với CHECKSUM
- Sử dụng UPS để tránh tình trạng tắt máy đột ngột
- Kiểm tra dung lượng đĩa thường xuyên để tránh các vấn đề lưu trữ
- Cập nhật SQL Server và hệ điều hành có bản vá bảo mật
- Chạy DBCC CHECKDB thường xuyên trên tất cả các cơ sở dữ liệu
1.4 Dấu hiệu phổ biến của một tệp MDF bị hỏng
Phát hiện nhanh lỗi hỏng tệp MDF có thể giúp bạn tiết kiệm rất nhiều thời gian khôi phục. Dưới đây là một số dấu hiệu phổ biến của lỗi tệp MDF:
- Thông báo lỗi khi bạn cố gắng đính kèm hoặc truy cập cơ sở dữ liệu
- Cơ sở dữ liệu hiển thị ở chế độ SUSPECT hoặc RECOVERY_PENDING
- Lỗi I/O trong SQL Server nhật ký, đặc biệt là lỗi 823, 824 hoặc 825
- Lỗi phân bổ trên các trang GAM/SGAM/IAM/PFS.
- Lỗi nhất quán trong quá trình vận hành cơ sở dữ liệu
- Các vấn đề hiệu suất đột ngột
Dưới đây là một số thông báo lỗi phổ biến khi tệp MDF bị hỏng:
Failed to retrieve data for this request. (Microsoft.SqlServer.Management.Sdk.Sfc) xxx.mdf is not a primary database file. (Microsoft SQL Server, Error: 5171)
Attach database failed for Server ‘xxx’. (Microsoft.SqlServer.Smo) The header for file ‘xxx.mdf’ is not a valid database file header. The FILE SIZE property is incorrect.(Micosoft SQL Server, Error:5172)
SQL Server detected a logical consistency-based I/O error: incorrect checksum (expected: 0x2abc3894; actual: 0x2ebe208e). It occurred during a read of page (1:1) in database ID 12 at offset 0x00000000002000 in file ‘xxx.mdf’. Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.(Microsoft SQL Server, Error:824)
SQL Server detected a logical consistency-based I/O error: torn page (expected signature: 0x########; actual signature: 0x#######).
2. Phương pháp thủ công miễn phí để sửa chữa tệp MDF
SQL ServerCác phương pháp gốc của 's cung cấp các phương pháp miễn phí để sửa lỗi tệp MDF. Các phương pháp thủ công này có thể cứu các cơ sở dữ liệu mà bạn không thể truy cập, nhưng chúng cần được thực hiện cẩn thận.
2.1 Khôi phục từ bản sao lưu gần đây
Các most phương pháp phục hồi đáng tin cậytarts với việc khôi phục từ bản sao lưu gần đây. Cách tiếp cận này bỏ qua sự cố hỏng hóc bằng cách quay lại trạng thái khỏe mạnh. Bạn có thể sử dụng lệnh RESTORE DATABASE với các tham số FROM DISK thích hợp để đưa cơ sở dữ liệu của bạn trở lại trạng thái trước khi hỏng hóc. Tính toàn vẹn dữ liệu của bạn vẫn nguyên vẹn mà không làm ảnh hưởng đến mối quan hệ giữa các đối tượng cơ sở dữ liệu.
2.2 Sử dụng DBCC CHECKDB với tùy chọn REPAIR
DBCC CHECKDB cung cấp cho bạn khả năng sửa chữa tích hợp nếu khôi phục bản sao lưu không phải là một lựa chọn:
DBCC CHECKDB (database_name, REPAIR_ALLOW_DATA_LOSS)
WITH ALL_ERRORMSGS, NO_INFOMSGS;
Lệnh này có ba cấp độ sửa chữa:
- REPAIR_FAST: Chỉ giữ lại cú pháp để tương thích ngược; không sửa chữa
- REPAIR_REBUILD: Thực hiện sửa chữa không mất dữ liệu
- REPAIR_ALLOW_DATA_LOSS: Sửa tất cả các lỗi đã báo cáo, nhưng có thể mất một số dữ liệu
Chúng tôi có một hướng dẫn toàn diện về DBCC CHECKDB bao gồm tất cả các tùy chọn và kịch bản (tài liệu chính thức của Microsoft cũng có sẵn đây).
2.3 Rủi ro khi sử dụng REPAIR_ALLOW_DATA_LOSS
Tùy chọn sửa chữa đi kèm với rủi ro. REPAIR_ALLOW_DATA_LOSS có thể xóa hoàn toàn các trang bị hỏng, dẫn đến mất dữ liệu vĩnh viễn. Nó cũng bỏ qua các ràng buộc khóa ngoại, có thể phá vỡ tính toàn vẹn quan hệ giữa các bảng. Vì vậy,
- Trước khi sửa chữa, bạn nên sao lưu thủ công tệp MDF bị hỏng.
- Sau khi sửa chữa, bạn nên xác minh các ràng buộc bằng DBCC CHECKCONSTRAINTS để tìm ra lỗi logic kinh doanh.
2.4 Sử dụng DBCC CHECKTABLE
DBCC CHECKTABLE cung cấp cho bạn một tarphương pháp tiếp cận geted cho tham nhũng trong các bảng cụ thể:
DBCC CHECKTABLE (table_name, REPAIR_ALLOW_DATA_LOSS);
Lệnh này xem xét một bảng thay vì toàn bộ cơ sở dữ liệu. Nó chạy nhanh hơn và ít rủi ro hơn khi bạn biết bảng nào có vấn đề.
2.5 Đặt Cơ sở dữ liệu ở chế độ KHẨN CẤP và SINGLE_USER
Cơ sở dữ liệu bị hỏng nghiêm trọng có thể cần chế độ KHẨN CẤP như một lựa chọn cuối cùng:
ALTER DATABASE [DatabaseName] SET EMERGENCY;
ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
DBCC CHECKDB ([DatabaseName], REPAIR_ALLOW_DATA_LOSS);
Quản trị viên cơ sở dữ liệu có quyền truy cập chỉ đọc thông qua chế độ Khẩn cấp nếu quyền truy cập bình thường không thành công. Quá trình này sẽ xây dựng lại nhật ký giao dịch, nhưng bạn sẽ mất tính nhất quán của giao dịch và phá vỡ chuỗi RESTORE. Sao lưu các tệp cơ sở dữ liệu của bạn trước khi thử sửa chữa khẩn cấp để giữ cho các tùy chọn khôi phục của bạn luôn mở.
2.6 Phương pháp “Hack Attach”
Nếu bạn không thể đính kèm một tập tin MDF bị hỏng vào SQL Server, bạn có thể thử phương pháp “hack attach”:
- Tạo một cơ sở dữ liệu giả có cùng tên với cơ sở dữ liệu bị hỏng của bạn
- Đưa cơ sở dữ liệu giả ra ngoại tuyến
- Xóa các tập tin cơ sở dữ liệu giả
- Sao chép tệp MDF bị hỏng của bạn vào vị trí tệp giả
- Đưa cơ sở dữ liệu lên mạng
Phương pháp này sẽ không sửa được lỗi nhưng giúp ích SQL Server nhận dạng tệp và kích hoạt lệnh sửa chữa.
2.7 Sửa chữa cơ sở dữ liệu chính bị hỏng
Việc hỏng cơ sở dữ liệu chính yêu cầu các bước sau:
- Sao chép tệp master.mdf bị hỏng dưới dạng cơ sở dữ liệu người dùng sang một máy chủ khác.
- Sử dụng các phương pháp thủ công hoặc DataNumen SQL Recovery khôi phục các đối tượng từ nó.
- Xuất các đối tượng đã phục hồi vào một tập lệnh.
- Xây dựng lại cơ sở dữ liệu chính
trên máy chủ gốc.
- Chạy tập lệnh được tạo ở bước 3 để tạo lại người dùng và đối tượng.
2.8 Khôi phục cơ sở dữ liệu MSDB bị nghi ngờ
MSDB là cơ sở dữ liệu hệ thống lưu trữ thông tin về các tác vụ Agent, lịch sử sao lưu và phục hồi, kế hoạch bảo trì và cấu hình Database Mail. Nếu không thể mở và được đánh dấu là SUSPECT bởi quá trình phục hồi, bạn có thể sử dụng một trong các phương pháp sau:
- Khôi phục từ bản sao lưu.
- Tạo lại MSDB bằng cách sử dụng instmsdb.sql
.
3. Sử dụng DataNumen SQL Recovery để sửa chữa tập tin MDF bị hỏng
Nếu các phương pháp thủ công trên không hiệu quả, bạn có thể thử các công cụ chuyên nghiệp, chẳng hạn như DataNumen SQL Recovery, giúp bạn sửa chữa các tệp MDF bị hỏng SQL ServerCác công cụ tích hợp không thể xử lý được. Phần mềm sử dụng các thuật toán tiên tiến để có được most dữ liệu có thể lấy được từ các tập tin bị hỏng và cung cấp cho bạn nhiều tùy chọn phục hồi.
3.1 Sửa chữa một tập tin duy nhất
Quy trình sửa chữa tệp đơn giản và dễ thực hiện:
- Đóng mọi chương trình có thể thay đổi tệp MDF.
- Start DataNumen SQL Recovery.
- Chọn tệp MDF bị hỏng bằng cách nhập tên tệp hoặc nhấp vào nút duyệt.
- Bao gồm bất kỳ tệp NDF liên quan nào nếu bạn cần.
- Chọn định dạng cơ sở dữ liệu nguồn hoặc để hệ thống tự phát hiện:
- Chọn nơi bạn muốn lưu tệp đã khôi phục.
- Nhấp vào “Starnút “Phục hồi”, phần mềm sẽ kết nối với bạn SQL Server trường hợp có tên máy chủ và thông tin đăng nhập của bạn.
- Sau đó, phần mềm sẽ sửa tệp của bạn bằng các thuật toán phục hồi tiên tiến.
Bạn sẽ thấy thanh tiến trình cho biết quá trình sửa chữa đang diễn ra như thế nào. Sau khi hoàn tất, bạn có thể kiểm tra cơ sở dữ liệu đã phục hồi của mình trong SQL Server Phòng thu quản lý.
3.2 Sửa chữa hàng loạt tập tin
Các công ty có nhiều cơ sở dữ liệu bị hỏng sẽ tiết kiệm thời gian với việc sửa chữa hàng loạt. Bạn có thể thêm tất cả các tệp MDF bị hỏng của mình vào hàng đợi, đặt tùy chọn đầu ra vàtartrong quá trình phục hồi. Tính năng này hoạt động tốt trong môi trường kinh doanh cần khắc phục các sự cố cơ sở dữ liệu hệ thống.
Các bước chi tiết:
- Chuyển đến tab “Phục hồi hàng loạt”.
- Nhấp vào “Thêm tệp” để thêm nhiều tệp SQL Server Các tập tin MDF cần được sửa chữa.
- Bạn cũng có thể nhấp vào “Tìm kiếm tệp” để tìm tệp cần sửa trên máy tính cục bộ.
- Nhấp vào “StarNút “Phục hồi”
- Tất cả các tệp PST trong danh sách sẽ được sửa chữa từng cái một.
3.3 Phục hồi từ ổ cứng, ảnh đĩa hoặc tệp sao lưu
DataNumen SQL Recovery làm nhiều hơn so với phục hồi tiêu chuẩn. Nó có thể lấy dữ liệu SQL từ:
- Các tập tin đĩa máy ảo VMWare VMDK
- Các tập tin VHD của máy tính ảo
- Tập tin hình ảnh ISO
- Windows NTCác tập tin sao lưu (.bkf)
- Tệp Acronis True Image (.tib)
- Norton Ghost tập tin (.gho, .v2i)
Tính linh hoạt này là một cách tuyệt vời để lấy lại dữ liệu của bạn trong nhiều tình huống khác nhau, chẳng hạn như:
- Bạn xóa cơ sở dữ liệu trong SQL Server.
- Bạn định dạng ổ cứng.
- Ổ cứng bị lỗi.
- Đĩa ảo trong VMWare hoặc Virtual PC bị hỏng hoặc bị lỗi và bạn lưu trữ cơ sở dữ liệu trên đó.
- Tệp sao lưu trên phương tiện sao lưu bị hỏng hoặc bị lỗi và bạn không thể khôi phục tệp cơ sở dữ liệu từ tệp đó.
- Tệp hình ảnh đĩa bị hỏng hoặc bị lỗi và bạn không thể khôi phục tệp MDF từ đó.
Trong những trường hợp trên, bạn vẫn có thể phục hồi SQL Server dữ liệu từ ổ cứng, ảnh đĩa hoặc tệp sao lưu trực tiếp.
Nếu bạn có sẵn ảnh đĩa hoặc tệp sao lưu, bạn có thể thực hiện như sau:
- Nhấp vào nút “…” để chọn tệp nguồn.
- Trong hộp thoại “Mở tệp”, chọn “Tất cả tệp (*.*)” làm bộ lọc.
- Chọn ảnh đĩa hoặc tệp sao lưu làm tệp nguồn cần sửa chữa.
- Đặt tên tệp cơ sở dữ liệu cố định đầu ra, chẳng hạn như E_Drive_fixed.mdf.
Nếu bạn muốn khôi phục trực tiếp từ ổ cứng, bạn có thể sử dụng DataNumen Disk Image để tạo một tệp hình ảnh đĩa của ổ cứng làm tệp nguồn trong DataNumen SQL Recovery:
- Chọn ổ cứng hoặc đĩa.
- Đặt tên tệp hình ảnh đầu ra.
- Nhấp vào “StarNút “t Cloning” để tạo tệp ảnh đĩa từ ổ cứng/đĩa.
3.4 Phục hồi các bản ghi và bảng đã xóa
Nếu bạn xóa một số bản ghi trong một bảng hoặc xóa một số bảng trong cơ sở dữ liệu do nhầm lẫn, bạn có thể khôi phục chúng thông qua DataNumen SQL Recovery.
Đối với các bản ghi chưa bị xóa, chúng có thể không xuất hiện theo thứ tự như trước khi bị xóa, vì vậy sau khi khôi phục, bạn có thể cần sử dụng câu lệnh SQL để tìm các bản ghi chưa bị xóa này.
Đối với các bảng chưa bị xóa, nếu không thể khôi phục được tên của chúng thì chúng sẽ được đổi tên thành “Recovered_Table1”, “Recovered_Table2”, v.v.
3.5 Phục hồi từ Ransomware hoặc Virus
Các phương pháp tiêu chuẩn thường không sửa được cơ sở dữ liệu bị mã hóa bởi phần mềm độc hại. DataNumen SQL Recovery khai thác các thuật toán đặc biệt để lấy dữ liệu từ các tệp MDF được mã hóa bằng ransomware mà không phải trả tiền cho kẻ tấn công. Phần mềm có thể khôi phục các tệp ngay cả sau khi mã hóa đã làm hỏng tiêu đề hoặc cấu trúc bên trong của chúng.
3.6 Sửa chữa một tập tin đã phục hồi
Nếu các tập tin MDF được phục hồi bởi DataNumen Data Recovery (hoặc các công cụ phục hồi dữ liệu khác) không thể được đính kèm trong SQL Server, các tập tin này vẫn có thể bị hỏng một số. Trong trường hợp như vậy, hãy sử dụng DataNumen SQL Recovery để sửa chữa chúng một lần nữa, để đảm bảo dữ liệu của họ có thể truy cập được trong SQL Server.
3.7 Phục hồi từ tempdb.mdf
Thời Gian SQL Server đang chạy, nó sẽ lưu trữ tất cả nhịp độrardữ liệu y, bao gồm tất cả nhịp độrarbảng y và thủ tục lưu trữ, thành nhịp độrarcơ sở dữ liệu y được gọi là tempdb.mdf. Khi thảm họa dữ liệu xảy ra, nếu bạn không thể khôi phục dữ liệu mong muốn từ các tệp mdf hiện có và các tệp ndf được liên kết, bạn vẫn có thể khôi phục dữ liệu của mình từ tempdb.mdf bằng cách sử dụng DataNumen SQL Recovery, như sau:
- Dừng SQL Server Dịch vụ Công cụ dữ liệu.
- Sử dụng chức năng tìm kiếm của Windows để tìm kiếm tệp tempdb.mdf trên máy tính nơi tệp SQL Server ví dụ được cài đặt.
- Sau khi bạn tìm thấy tempdb.mdf, bạn có thể chọn nó làm tệp nguồn cần phục hồi và sử dụng DataNumen SQL Recovery để khôi phục nó.
3.8 Các tập tin mẫu
| SQL Server phiên bản | Tập tin MDF bị hỏng | Tệp MDF được cố định bởi DataNumen SQL Recovery |
| SQL Server 2014 | Lỗi1_4.mdf | Error1_4_fixed.mdf |
| SQL Server 2014 | Lỗi2_4.mdf | Error2_4_fixed.mdf |
| SQL Server 2014 | Lỗi4_4.mdf | Error4_4_fixed.mdf |
| SQL Server 2014 | Lỗi5_4.mdf | Error5_4_fixed.mdf |
4. Dịch vụ phục hồi trực tuyến
Các dịch vụ trực tuyến cung cấp cho bạn một cách khác để sửa chữa cơ sở dữ liệu SQL khi không thể tải xuống và cài đặt phần mềm phục hồi hoặc không thuận tiện. Các dịch vụ trực tuyến này giúp sửa các tệp MDF bị hỏng mà không cần kiến thức chuyên môn sâu.
4.1 Thủ tục phục hồi đơn giản
Các dịch vụ phục hồi SQL trực tuyến tuân theo quy trình dễ sử dụng:
- Tải lên tập tin bị hỏng – Tệp MDF bị hỏng của bạn được chuyển an toàn đến máy chủ của nhà cung cấp dịch vụ thông qua kết nối được mã hóa
- Xử lý và phân tích – Dịch vụ quét tệp của bạn bằng các thuật toán chuyên biệt và xác định dữ liệu có thể phục hồi
- Xem trước kết quả phục hồi – Bạn có thể xem trước các đối tượng cơ sở dữ liệu có thể phục hồi trước khi cam kết phục hồi hoàn toàn
- Tải xuống tệp đã sửa chữa – Tệp cơ sở dữ liệu đã sửa chữa hoặc các tập lệnh SQL sẽ khả dụng sau khi xử lý
Các dịch vụ đám mây này hoạt động với SQL Server các tệp cơ sở dữ liệu như .mdf, .ndf và .ldf. Kích thước tệp và mức độ hỏng hóc quyết định thời gian xử lý, dao động từ vài giây đến vài phút.
4.2 ưu và nhược điểm
Ưu điểm của việc phục hồi trực tuyến:
- Bạn không cần cài đặt phần mềm – hoàn hảo cho môi trường hạn chế hoặc người dùng không có quyền quản trị
- Hoạt động trên mọi hệ điều hành bao gồm macOS và Linux
- Sẵn sàng sử dụng mà không cần tải xuống các gói phần mềm lớn
- Giao diện thân thiện với người dùng phù hợp với những người có kỹ năng kỹ thuật cơ bản
- Bạn có thể xem dữ liệu có thể phục hồi trước khi mua
Những hạn chế cần suy nghĩ:
- Việc tải thông tin cơ sở dữ liệu nhạy cảm lên máy chủ của bên thứ ba làm dấy lên lo ngại về quyền riêng tư
- Kích thước cơ sở dữ liệu tối đa có hạn chế
- Ít tùy chọn tùy chỉnh hơn các công cụ ngoại tuyến
- Tốc độ phục hồi phụ thuộc vào hiệu suất và tải của máy chủ
- Phiên bản demo chỉ hiển thị một số dữ liệu có thể phục hồi cho đến khi mua
Các công cụ phục hồi ngoại tuyến cung cấp cho bạn nhiều quyền kiểm soát và quyền riêng tư hơn nhưng cần nhiều chuyên môn kỹ thuật hơn. Most Các dịch vụ trực tuyến cho phép bạn kiểm tra hiệu quả của chúng bằng các bản demo miễn phí. Các bản demo này khôi phục dữ liệu mẫu và đánh dấu các mục có thể khôi phục khác bằng các chỗ giữ chỗ.
Lựa chọn tốt nhất giữa phục hồi trực tuyến và ngoại tuyến phụ thuộc vào nhu cầu của bạn. Áp lực thời gian, kỹ năng kỹ thuật, độ nhạy dữ liệu và loại tệp MDF bị hỏng đều đóng vai trò quan trọng trong quyết định này.
5. Nhiều giải pháp hơn
Trong khi các phương pháp được đề cập trong các phần trước xử lý most Các tình huống hỏng tệp MDF, bối cảnh phục hồi cơ sở dữ liệu cung cấp các giải pháp chuyên biệt bổ sung. Chúng tôi đã đánh giá nhiều phương pháp tiếp cận và biên soạn danh sách toàn diện này của most phương pháp thay thế hiệu quả bổ sung cho các chiến lược sửa chữa cốt lõi.
6. Sau khi sửa chữa: Xác thực và bảo mật cơ sở dữ liệu của bạn
Việc sửa chữa tệp MDF bị hỏng của bạn chỉ giải quyết được một nửa vấn đề. Cơ sở dữ liệu của bạn cần được chứng minh là đúng và bảo mật sau khi khôi phục thành công để duy trì tính toàn vẹn của dữ liệu và ngăn chặn các sự cố trong tương lai.
6.1 Kiểm tra tính toàn vẹn của dữ liệu đã phục hồi
Kiểm tra xác thực chi tiết đảm bảo tất cả dữ liệu vẫn nguyên vẹn sau khi sửa chữa. Lệnh DBCC CHECKDB với DATA_PURITY quét các giá trị không hợp lệ:
DBCC CHECKDB (database_name) WITH DATA_PURITY, NO_INFOMSGS;
Lệnh này phát hiện các giá trị cột có thể không hợp lệ hoặc nằm ngoài phạm vi cho kiểu dữ liệu của chúng. Hãy nhớ rằng bạn phải sửa bất kỳ lỗi nào được phát hiện theo cách thủ công vì tùy chọn sửa chữa không thể tự động sửa chúng.
DBCC CHECKCONSTRAINTS giúp xác minh logic kinh doanh vẫn nguyên vẹn vì các hoạt động sửa chữa không kiểm tra hoặc duy trì các ràng buộc khóa ngoại.
6.2 Xây dựng lại các chỉ mục và ràng buộc
Tối ưu hóa hiệu suất trở thành bước tiếp theo sau khi tính toàn vẹn của dữ liệu được kiểm tra. Các hoạt động sửa chữa thường khiến các chỉ mục bị phân mảnh, cần được chú ý nhanh chóng:
ALTER INDEX ALL ON table_name REBUILD;
Nhóm cốt lõi nên xây dựng lại các chỉ mục sử dụng cao cụ thể trước tiên để khôi phục hiệu suất nhanh chóng trên các hệ thống quan trọng. Điều này tạo ra các chỉ mục mới, phù hợposted chỉ số mà boost thời gian phản hồi truy vấn.
6.3 Sao lưu cơ sở dữ liệu đã sửa chữa
Tạo ngay bản sao lưu đầy đủ cho cơ sở dữ liệu mới sửa chữa của bạn:
BACKUP DATABASE database_name
TO DISK = 'path\backup_file.bak'
WITH CHECKSUM, FORMAT;
Tùy chọn CHECKSUM kiểm tra tính toàn vẹn của bản sao lưu trong quá trình hoạt động. Kiểm tra bản sao lưu trên máy chủ thử nghiệm sau đó để đảm bảo nó hoạt động bình thường trước khi sử dụng để phục hồi sản xuất.
6.4 Thiết lập Giám sát và Cảnh báo
Giám sát chủ động giúp phát hiện các vấn đề tiềm ẩn trước khi chúng làm hỏng dữ liệu. Thiết lập cảnh báo cho các số liệu chính bao gồm:
- Phần trăm CPU (ngưỡng: 90%)
- Phần trăm không gian dữ liệu được sử dụng (ngưỡng: 95%)
- Sử dụng lao động (ngưỡng: 60%)
- Bế tắc (bất kỳ sự cố nào)
- Lỗi hệ thống trong các nỗ lực kết nối
Azure Monitor hoặc SQL Server Management Studio có thể cấu hình các cảnh báo này. Cảnh báo có trạng thái sẽ được kích hoạt cho đến khi được giải quyết, giúp ngăn chặn tình trạng thông báo liên tục trong các sự cố đang diễn ra.
Nên kiểm tra tính toàn vẹn hàng tuần bằng DBCC CHECKDB trên các cơ sở dữ liệu quan trọng để phát hiện sớm sự cố.
7. Câu hỏi thường gặp
Hỏng cơ sở dữ liệu tạo ra nhiều câu hỏi từ người dùng. Hãy cùng xem một số câu hỏi thường gặp về việc sửa chữa các tệp MDF trong SQL Server.
7.1 Tôi có thể khôi phục tệp MDF mà không có tệp LDF không?
Trả lời: Có, với các công cụ chuyên nghiệp như DataNumen SQL Recovery, bạn có thể khôi phục tệp MDF mà không cần tệp LDF.
7.2 Tôi nên sử dụng công cụ sửa chữa của bên thứ ba hay phương pháp tích hợp sẵn?
Trả lời: Các phương pháp tích hợp xứng đáng được thử đầu tiên vì chúng có hỗ trợ chính thức. Mặc dù vậy, các công cụ của bên thứ ba có thể khôi phục nhiều dữ liệu hơn trong các trường hợp hỏng hóc nghiêm trọng. Lựa chọn tốt nhất phụ thuộc vào:
- Tính quan trọng của dữ liệu
- Khả năng sao lưu
- Giới hạn thời gian
- Ràng buộc ngân sách
- Khả năng chịu rủi ro mất dữ liệu
8. Phần kết luận
SQL Server hỏng cơ sở dữ liệu cần phát hiện nhanh và phương pháp phục hồi thích hợp để giảm thiểu mất dữ liệu. Dấu hiệu hỏng tệp MDF giúp bạn hành động nhanh khi có sự cố phát sinh. Bạn có nhiều tùy chọn phục hồi, từ tích hợp sẵn SQL Server công cụ cho các giải pháp chuyên biệt của bên thứ ba như DataNumen SQL Recovery công cụ. Dưới đây là tóm tắt của bài viết này:
Phòng bệnh hơn chữa bệnh. Bảo trì cơ sở dữ liệu thường xuyên, quy trình sao lưu phù hợp và theo dõi tình trạng ổ đĩa giúp giảm đáng kể rủi ro hỏng hóc. Hệ thống cũng cần chứng minh cơ sở dữ liệu được phục hồi đúng thông qua kiểm tra tính toàn vẹn và xây dựng lại chỉ mục để giữ dữ liệu đáng tin cậy sau khi sửa chữa.









