Chia sẻ ngay bây giờ:
Mục lục ẩn

Khi cơ sở dữ liệu SQL của bạn bị kẹt ở trạng thái chờ phục hồi, cơ sở dữ liệu sẽ không thể truy cập được và các hoạt động bị đình trệ. Hướng dẫn toàn diện này cung cấp 15 phương pháp đã được chứng minh để giải quyết các sự cố chờ phục hồi cơ sở dữ liệu SQL, từ việc khởi động lại đơn giản đến các biện pháp sửa chữa khẩn cấp nâng cao.

1. Hiểu về trạng thái chờ phục hồi cơ sở dữ liệu SQL

Trước khi thử bất kỳ bản sửa lỗi nào, việc hiểu rõ nguyên nhân gây ra sự cố đang chờ khôi phục cơ sở dữ liệu SQL là rất quan trọng để lựa chọn giải pháp phù hợp.

1.1 Đang chờ phục hồi có nghĩa là gì?

Việc phục hồi đang chờ xử lý cho thấy rằng SQL Server Nhận biết cơ sở dữ liệu cần phục hồi nhưng không thể bắt đầu quá trình phục hồi. Không giống như trạng thái “Đang phục hồi” hiển thị quá trình phục hồi đang diễn ra, “Đang chờ phục hồi” có nghĩa là quá trình phục hồi bị chặn bởi một trở ngại.

SQL Server cơ sở dữ liệu đang trong trạng thái chờ phục hồi.

Các trạng thái cơ sở dữ liệu chính bao gồm:

  • ONLINE – Trạng thái hoạt động bình thường
  • PHỤC HỒI – Quá trình phục hồi đang diễn ra tích cực
  • ĐANG CHỜ PHỤC HỒI – Quá trình phục hồi không thể bắt đầu
  • KHẢ NGHI – Cơ sở dữ liệu có lỗi nghiêm trọng
  • KHẨN CẤP – Quyền truy cập chỉ đọc hạn chế để sửa chữa
  • OFFLINE – Đã ngắt kết nối thủ công

1.2 Nguyên nhân phổ biến khiến việc khôi phục cơ sở dữ liệu SQL đang chờ xử lý

Các sự cố đang chờ khôi phục cơ sở dữ liệu SQL thường xuất phát từ những nguyên nhân phổ biến sau:

  • Tệp nhật ký giao dịch bị thiếu hoặc bị hỏng (LDF)
  • Không đủ dung lượng đĩa trong quá trình khôi phục
  • Lỗi phần cứng và hệ thống tắt đột ngột
  • Tệp cơ sở dữ liệu MDF bị hỏng
  • Các vấn đề về quyền truy cập tệp ngăn cản việc truy cập
  • SQL Server sự cố về thời gian khởi động dịch vụ
  • Lỗi cấu hình FILESTREAM
  • Đường dẫn tệp không chính xác sau khi di chuyển máy chủ

1.3 Cách kiểm tra trạng thái cơ sở dữ liệu

Xác minh trạng thái cơ sở dữ liệu của bạn bằng các phương pháp sau:

Sử dụng SQL Server Xưởng quản lý:

  1. Kết nối với của bạn SQL Server ví dụ
  2. Mở rộng Cơ sở dữ liệu thư mục
  3. Tìm kiếm cơ sở dữ liệu hiển thị trạng thái “(Đang chờ phục hồi)”

SQL Server cơ sở dữ liệu đang trong trạng thái chờ phục hồi.

Sử dụng lệnh T-SQL:

SELECT name, state_desc FROM sys.databases WHERE state_desc = 'RECOVERY_PENDING';

2. Các bước chẩn đoán ban đầu

Chẩn đoán đúng là điều cần thiết trước khi thử bất kỳ giải pháp phục hồi cơ sở dữ liệu SQL nào đang chờ sửa chữa.

2.1 séc SQL Server Nhật ký lỗi

Nhật ký lỗi chứa thông tin quan trọng về nguyên nhân gây ra trạng thái chờ phục hồi.

  1. Mở SQL Server Studio quản lý
  2. Hướng đến Quản lý -> SQL Server Logs
  3. Nhấp đúp vào nhật ký hiện tại để xem các lỗi gần đây
  4. Tìm kiếm thông báo lỗi liên quan đến cơ sở dữ liệu của bạn

Kiểm tra SQL Server nhật ký lỗi cho các lỗi gần đây liên quan đến cơ sở dữ liệu của bạn.

Ngoài ra, hãy sử dụng T-SQL:

EXEC sp_readerrorlog;

2.2 Kiểm tra Nhật ký sự kiện Windows

  1. Ấn Bản Windows Key + R
  2. Kiểu eventvwr.msc và nhấn Enter
    Mở trình xem sự kiện của Windows.
  3. Hướng đến Windows Logs -> WELFARE và Ứng dụng
  4. Tìm kiếm SQL Server các lỗi liên quan vào thời điểm sự cố xảy ra

Trong trình xem sự kiện, hãy tìm kiếm SQL Server các lỗi liên quan có thể gây ra sự cố đang chờ phục hồi cơ sở dữ liệu SQL.

2.3 Xác minh khả năng truy cập tệp

  1. Điều hướng đến vị trí tệp cơ sở dữ liệu của bạn
  2. Xác minh cả tệp MDF và LDF đều tồn tại
  3. Kiểm tra xem ổ đĩa có trực tuyến và có thể truy cập được không
  4. Xác nhận ổ đĩa mạng được gắn đúng cách

3. Khắc phục sự cố #1: Khởi động lại SQL Server Dịch vụ

Khởi động lại SQL Server Dịch vụ này giải quyết nhiều sự cố đang chờ xử lý khi khôi phục cơ sở dữ liệu SQL do vấn đề về thời gian hoặc xung đột tài nguyên tạm thời gây ra.

3.1 Khi việc khởi động lại dịch vụ thành công

Phương pháp này có hiệu quả đối với:

  • Khóa tài nguyên tạm thời trong quá trình khởi động
  • Độ trễ khả dụng của ổ đĩa
  • Các vấn đề về thời gian phụ thuộc dịch vụ
  • Xung đột cấu hình nhỏ

3.2 Cách khởi động lại SQL Server Dịch vụ

Phương pháp 1: SQL Server Quản lý cấu hình

  1. Mở SQL Server Quản lý cấu hình
  2. Nhấp chuột SQL Server Dịch vụ
  3. Nhấp chuột phải vào SQL Server ví dụ, chẳng hạn như SQL Server (MSSQLSERVER)
  4. Chọn Khởi động lại
  5. Chờ cho dịch vụ khởi động lại hoàn toàn.

Khởi động lại SQL Server dịch vụ trong SQL Server Quản lý cấu hình.

Phương pháp 2: Bảng điều khiển dịch vụ

  1. Ấn Bản Windows Key + R
  2. Kiểu services.msc và nhấn Enter
    Mở bảng điều khiển dịch vụ Windows.
  3. Tìm SQL Server ví dụ, chẳng hạn như SQL Server (MSSQLSERVER)
  4. Nhấp chuột phải và chọn Khởi động lại

Khởi động lại SQL Server dịch vụ trong bảng điều khiển dịch vụ để giải quyết vấn đề đang chờ khôi phục cơ sở dữ liệu SQL.

Phương pháp 3: PowerShell

Restart-Service -Name "MSSQLSERVER" -Force

3.3 Xác minh sau khi khởi động lại

  1. Chờ 2-3 phút để quá trình khởi động hoàn tất.
  2. Kiểm tra trạng thái cơ sở dữ liệu trong SSMS
  3. Xác minh nhật ký lỗi cho bất kỳ tin nhắn mới nào
  4. Kiểm tra kết nối cơ sở dữ liệu

4. Sửa lỗi #2: Kiểm tra và giải quyết các vấn đề về dung lượng ổ đĩa

Thiếu dung lượng ổ đĩa là nguyên nhân phổ biến gây ra các sự cố chờ xử lý khi khôi phục cơ sở dữ liệu SQL. Các thao tác khôi phục yêu cầu thêm dung lượng cho các tập tin tạm thời và sự phát triển của nhật ký.

4.1 Xác định các vấn đề về dung lượng đĩa

  1. Mở File Explorer
  2. Điều hướng đến các ổ đĩa chứa các tệp cơ sở dữ liệu
  3. Kiểm tra dung lượng trống có sẵn
  4. Đảm bảo ít nhất 10-20% không gian trống cho các hoạt động phục hồi

4.2 Giải phóng dung lượng đĩa

  1. Xóa các tệp tạm thời không cần thiết
  2. Trong sáng SQL Server sao lưu các tập tin nếu không gian lưu trữ quan trọng
  3. Di chuyển các tập tin không cần thiết sang ổ đĩa khác
  4. Thu nhỏ các tệp cơ sở dữ liệu khác nếu có thể

Thu nhỏ các tệp cơ sở dữ liệu (sử dụng cẩn thận):

DBCC SHRINKFILE (logicalfilename, target_size);

4.3 Thiết lập Cơ sở dữ liệu Trực tuyến Sau khi Sửa lỗi Không gian

Khi đã có đủ dung lượng, hãy thử đưa cơ sở dữ liệu lên mạng:

ALTER DATABASE [DatabaseName] SET ONLINE;

5. Sửa lỗi #3: Đặt SQL Server Dịch vụ khởi động chậm

Giàn cảnh SQL Server Chức năng khởi động chậm giúp giải quyết các sự cố đang chờ xử lý khi khôi phục cơ sở dữ liệu SQL do hệ thống lưu trữ hoặc ổ đĩa mạng chưa sẵn sàng trong quá trình khởi động hệ thống.

5.1 Hiểu các vấn đề về thời gian

Các vấn đề về thời gian xảy ra khi:

  • Lưu trữ SAN hoặc mạng mất thời gian để khởi tạo
  • Ký tự ổ đĩa không được gán trong quá trình khởi động sớm
  • Ổ đĩa mạng yêu cầu xác thực
  • Bộ điều khiển lưu trữ cần thời gian khởi tạo

5.2 Cấu hình Khởi động trễ

  1. Ấn Bản Windows Key + R
  2. Kiểu services.msc và nhấn Enter
    Mở bảng điều khiển dịch vụ Windows.
  3. Tìm SQL Server ví dụ, chẳng hạn như SQL Server (MSSQLSERVER)
  4. Nhấp chuột phải và chọn Bất động sản
  5. Thay đổi Kiểu khởi động đến Tự động (chậm Start)
    Thay đổi SQL Server Đặt kiểu khởi động thành Tự động (Khởi động trì hoãn) để giải quyết sự cố chờ khôi phục cơ sở dữ liệu SQL.
  6. Nhấp chuột OK
  7. Khởi động lại hệ thống để kiểm tra.

5.3 Các giải pháp thay thế cho thời gian

Để kiểm soát tốt hơn, hãy tạo một tác vụ theo lịch trình:

  1. Mở Task Scheduler
  2. Nhấp chuột Hành động -> Tạo tác vụ cơ bản
  3. Nhập vào Họ tên và Mô tả Chi tiết của nhiệm vụ, chẳng hạn như “Trì hoãn việc bắt đầu của SQL Server Dịch vụ"
  4. Thiết lập Cò súng đến Khi máy tính khởi động
  5. Thiết lập Hoạt động đến Chương trình bắt đầu
  6. Thiết lập Chương trình / Script đến con đường đầy đủ của Sqlservr.exe, như thế này: C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe. Bạn có thể sử dụng chức năng tìm kiếm trong Windows để tìm tệp này.
  7. Trong trang kết thúc, chọn Mở hộp thoại Thuộc tính cho tác vụ này khi tôi nhấp vào Kết thúc.
    Tạo tác vụ để bắt đầu trễ SQL Server trong Windows Task Scheduler.
  8. Nhấp chuột Kết thúc.
  9. Trong hộp thoại thuộc tính tác vụ, nhấp vào Triggers chuyển hướng
  10. Chọn kích hoạt và nhấp vào Chỉnh sửa
    Chỉnh sửa trình kích hoạt tác vụ trong hộp thoại thuộc tính tác vụ.
  11. Trong Cài đặt nâng cao, hãy kiểm tra Nhiệm vụ trì hoãn cho: và đặt thời gian là 3 phút.
    Đặt chế độ khởi chạy trì hoãn sau 3 phút để giải quyết lỗi chờ khôi phục cơ sở dữ liệu SQL.
  12. Nhấp chuột OK.

6. Bản sửa lỗi #4: Sửa quyền tệp và quyền truy cập

Các vấn đề về quyền ngăn cản SQL Server truy cập các tệp cơ sở dữ liệu, dẫn đến trạng thái chờ khôi phục cơ sở dữ liệu SQL. Quyền tệp phù hợp là điều cần thiết cho các hoạt động cơ sở dữ liệu.

6.1 Các vấn đề chung về quyền

  • SQL Server tài khoản dịch vụ không có quyền truy cập tệp
  • Phần mềm diệt vi-rút chặn truy cập tệp
  • Đã thay đổi chính sách bảo mật
  • Các vấn đề về quyền chia sẻ mạng

6.2 Sửa quyền thư mục

  1. Điều hướng đến thư mục tệp cơ sở dữ liệu
  2. Nhấp chuột phải vào thư mục và chọn Bất động sản
  3. Nhấn vào Bảo mật chuyển hướng
  4. Nhấp chuột Chỉnh sửa
  5. Thêm SQL Server tài khoản dịch vụ nếu bị thiếu
  6. Cấp Full Control quyền
  7. Nhấp chuột OK để áp dụng các thay đổi

Kiểm tra và sửa quyền của SQL Server tài khoản dịch vụ cho SQL Server thư mục dữ liệu.

Sử dụng dòng lệnh (icacls):

icacls "C:\Data" /grant "NT SERVICE\MSSQLSERVER":F /T

6.3 Những cân nhắc về tài khoản dịch vụ

Xác minh SQL Server tài khoản dịch vụ:

  1. Mở SQL Server Quản lý cấu hình
  2. Nhấp chuột SQL Server Dịch vụ
  3. Lưu ý Đăng nhập với tư cách tài khoản cho SQL Server
  4. Đảm bảo tài khoản này có quyền phù hợp

Kiểm tra SQL Server tài khoản dịch vụ để giải quyết vấn đề đang chờ phục hồi cơ sở dữ liệu SQL.

7. Sửa lỗi #5: Sửa đường dẫn tệp thủ công

Sự cố đường dẫn tệp xảy ra khi các tệp cơ sở dữ liệu bị di chuyển hoặc ký tự ổ đĩa thay đổi. Phương pháp này cập nhật SQL Servertham chiếu tệp nội bộ của 'mà không di chuyển các tệp thực tế.

7.1 Khi xảy ra sự cố đường dẫn

  • Thay đổi phần cứng máy chủ
  • Chỉ định lại ký tự ổ đĩa
  • Sửa đổi đường dẫn mạng
  • Di chuyển tệp cơ sở dữ liệu

7.2 Sửa đường dẫn tệp

  1. Xác định đường dẫn tệp hiện tại trong nhật ký lỗi
  2. Xác định vị trí các tập tin cơ sở dữ liệu thực tế
  3. Sử dụng ALTER DATABASE để cập nhật đường dẫn

Cập nhật đường dẫn tệp dữ liệu:

ALTER DATABASE [DatabaseName] 
MODIFY FILE (NAME = 'LogicalDataFileName', FILENAME = 'C:\NewPath\DatabaseName.mdf');

Cập nhật đường dẫn tệp nhật ký:

ALTER DATABASE [DatabaseName] 
MODIFY FILE (NAME = 'LogicalLogFileName', FILENAME = 'C:\NewPath\DatabaseName_Log.ldf');

7.3 Các bước xác minh

  1. Khởi động lại SQL Server dịch vụ
  2. Kiểm tra trạng thái cơ sở dữ liệu
  3. Xác minh nhật ký lỗi cho các thông báo liên quan đến đường dẫn
  4. Kiểm tra kết nối cơ sở dữ liệu

8. Sửa lỗi #6: Đưa cơ sở dữ liệu ngoại tuyến rồi trực tuyến

Việc thay đổi trạng thái đơn giản này có thể giải quyết các sự cố nhỏ liên quan đến việc khôi phục cơ sở dữ liệu SQL bằng cách buộc chuyển đổi trạng thái một cách sạch sẽ và xóa các khóa tạm thời.

8.1 Khi nào phương pháp này hiệu quả

  • Những mâu thuẫn nhỏ của tiểu bang
  • Khóa tài nguyên tạm thời
  • Quá trình khôi phục đơn giản được thiết lập lại
  • Điều kiện lỗi không nghiêm trọng

8.2 Thủ tục ngoại tuyến/trực tuyến

  1. Đảm bảo không có kết nối nào đang hoạt động với cơ sở dữ liệu
  2. Thực hiện lệnh ngoại tuyến
  3. Đợi vài giây
  4. Thực hiện lệnh trực tuyến

Phương pháp an toàn (chờ kết nối đóng):

ALTER DATABASE [DatabaseName] SET OFFLINE;
ALTER DATABASE [DatabaseName] SET ONLINE;

Phương pháp tức thời (chấm dứt kết nối):

ALTER DATABASE [DatabaseName] SET OFFLINE WITH ROLLBACK IMMEDIATE;
ALTER DATABASE [DatabaseName] SET ONLINE;

8.3 Rủi ro và cân nhắc

Cảnh báo: Sử dụng ROLLBACK IMMEDIATE có thể gây mất dữ liệu từ các giao dịch chưa được xác nhận. Chỉ sử dụng khi cần thiết và đảm bảo người dùng đã đăng xuất.

9. Sửa lỗi #7: Tắt tính năng TỰ ĐỘNG ĐÓNG

Tính năng TỰ ĐỘNG ĐÓNG có thể gây ra sự cố đang chờ khôi phục cơ sở dữ liệu SQL khi cơ sở dữ liệu thường xuyên mở và đóng, tạo ra xung đột thời gian trong các hoạt động khôi phục.

9.1 Hiểu tác động của tính năng ĐÓNG TỰ ĐỘNG

  • Cơ sở dữ liệu đóng sau khi người dùng cuối cùng ngắt kết nối
  • Phải khôi phục mỗi lần mở cơ sở dữ liệu
  • Tạo ra các chu kỳ phục hồi thường xuyên
  • Có thể can thiệp vào các hoạt động khác

9.2 Vô hiệu hóa chức năng tự động đóng

Sử dụng T-SQL:

ALTER DATABASE [DatabaseName] SET AUTO_CLOSE OFF;

Sử dụng SQL Server Xưởng quản lý:

  1. Nhấp chuột phải vào cơ sở dữ liệu
  2. Chọn Bất động sản
  3. Đến phần Tùy chọn trang
  4. Thiết lập Tự động đóng đến Sai
  5. Nhấp chuột OK

Vô hiệu hóa thuộc tính Tự động đóng cho một SQL Server cơ sở dữ liệu trong SQL Server Management Studio giải quyết vấn đề đang chờ phục hồi cơ sở dữ liệu SQL.

9.3 Cài đặt TỰ ĐỘNG liên quan

Cũng nên cân nhắc tắt AUTO_SHRINK để có hiệu suất tốt hơn:

ALTER DATABASE [DatabaseName] SET AUTO_SHRINK OFF;

10. Cách khắc phục #8: Xóa tệp nhật ký bị hỏng và khởi động lại.

Phương pháp này hiệu quả khi tệp nhật ký giao dịch bị hỏng nghiêm trọng không thể sửa chữa. Phương pháp này chỉ nên được sử dụng trong môi trường phát triển hoặc khi việc mất dữ liệu là chấp nhận được.

10.1 Khi nào thì việc xóa nhật ký là phù hợp

⚠️ CẢNH BÁO QUAN TRỌNG: Phương pháp này có thể gây mất dữ liệu!

Chỉ sử dụng khi:

  • Làm việc với cơ sở dữ liệu phát triển/thử nghiệm
  • Tệp nhật ký bị hỏng hoàn toàn
  • Không có tùy chọn phục hồi nào khác tồn tại
  • Các bản sao lưu gần đây có sẵn

10.2 Quy trình xóa tệp nhật ký

  1. Dừng SQL Server dịch vụ hoàn toàn
  2. Điều hướng đến vị trí tệp cơ sở dữ liệu
  3. Xóa tệp .LDF (giữ lại tệp .MDF)
  4. Bắt đầu SQL Server dịch vụ
  5. SQL Server sẽ tự động tạo một tệp nhật ký mới

10.3 Cảnh báo quan trọng

Hậu quả mất dữ liệu:

  • Tất cả các giao dịch chưa được thực hiện sẽ bị mất vĩnh viễn.
  • Chuỗi nhật ký bị hỏng – bản sao lưu khác biệt không hợp lệ
  • Việc phục hồi tại một thời điểm trở nên bất khả thi
  • Chỉ sử dụng trong môi trường không phải sản xuất

11. Sửa lỗi #9: Tách và gắn lại cơ sở dữ liệu

Lực tách và lực gắn lại SQL Server để xây dựng lại các tệp nhật ký bị thiếu hoặc bị hỏng. Phương pháp này có thể giải quyết các sự cố đang chờ khôi phục cơ sở dữ liệu SQL khi tệp nhật ký gặp sự cố.

11.1 Khi nào thì Tháo/Gắn lại có hiệu quả

  • Thiếu tệp nhật ký
  • Tiêu đề tệp nhật ký bị hỏng
  • Đường dẫn tệp nhật ký thay đổi
  • Các tình huống tham nhũng đơn giản

11.2 Quy trình Tháo/Lắp lại Tiêu chuẩn

  1. Đầu tiên, hãy đặt cơ sở dữ liệu ở chế độ khẩn cấp
  2. Chuyển sang chế độ nhiều người dùng
  3. Tách cơ sở dữ liệu
  4. Gắn lại chỉ bằng tệp MDF
-- Set to emergency mode
ALTER DATABASE [DatabaseName] SET EMERGENCY;
ALTER DATABASE [DatabaseName] SET MULTI_USER;

-- Detach database
EXEC sp_detach_db '[DatabaseName]';

-- Re-attach with single file (MDF only)
EXEC sp_attach_single_file_db 
    @DBName = '[DatabaseName]', 
    @physname = N'C:\Data\DatabaseName.mdf';

11.3 Phương pháp đính kèm thay thế

Đối với các tình huống có nhiều tệp:

CREATE DATABASE [DatabaseName] 
ON (FILENAME = 'C:\Data\DatabaseName.mdf'),
   (FILENAME = 'C:\Data\DatabaseName_2.ndf')
FOR ATTACH;

12. Bản sửa lỗi #10: Xây dựng lại tệp nhật ký giao dịch

Việc xây dựng lại nhật ký sẽ tạo một tệp nhật ký giao dịch mới khi tệp gốc bị mất hoặc bị hỏng không thể sửa chữa. Phương pháp này giải quyết các sự cố đang chờ khôi phục cơ sở dữ liệu SQL nhưng dẫn đến mất dữ liệu.

12.1 Khi nào cần xây dựng lại bản ghi

  • Thiếu tệp LDF sau khi phần cứng bị lỗi
  • Nhật ký giao dịch bị hỏng nghiêm trọng
  • Đường dẫn tệp nhật ký thay đổi không thể sửa được
  • Các tình huống phục hồi khẩn cấp

12.2 Quy trình xây dựng lại nhật ký

⚠️ CẢNH BÁO: Điều này có thể gây mất dữ liệu!

  1. Đặt cơ sở dữ liệu ở chế độ khẩn cấp
  2. Sử dụng lệnh REBUILD LOG
  3. Chỉ định vị trí tệp nhật ký mới
  4. Đưa cơ sở dữ liệu lên mạng
ALTER DATABASE [DatabaseName] SET EMERGENCY;
GO

ALTER DATABASE [DatabaseName] REBUILD LOG ON 
(NAME = 'DatabaseName_Log', FILENAME = 'C:\Logs\DatabaseName_Log.ldf');
GO

ALTER DATABASE [DatabaseName] SET ONLINE;
GO

12.3 Hiểu về tác động của mất dữ liệu

Việc xây dựng lại nhật ký gây ra:

  • Mất tất cả các giao dịch chưa cam kết
  • Số thứ tự nhật ký bị hỏng
  • Không thể áp dụng các bản sao lưu nhật ký tiếp theo
  • Việc phục hồi tại một thời điểm trở nên bất khả thi

13. Sửa lỗi #11: Sửa chữa chế độ khẩn cấp với DBCC KIỂM TRADB

Chế độ sửa chữa khẩn cấp là phương pháp cuối cùng để khôi phục cơ sở dữ liệu SQL đang chờ xử lý các sự cố do lỗi gây ra. Phương pháp này có thể sửa chữa cơ sở dữ liệu nhưng có thể dẫn đến mất dữ liệu đáng kể.

13.1 Hiểu về Chế độ Khẩn cấp

⚠️ CẢNH BÁO CỰC KỲ: Nguy cơ mất dữ liệu cao!

Chỉ sử dụng chế độ khẩn cấp khi:

  • Tất cả các phương pháp khác đều thất bại
  • Không có bản sao lưu gần đây nào khả dụng
  • Một số dữ liệu phục hồi tốt hơn là mất toàn bộ
  • Cơ sở dữ liệu bị hỏng nghiêm trọng

13.2 Quy trình sửa chữa khẩn cấp

  1. Trước tiên hãy sao lưu các tệp cơ sở dữ liệu bị hỏng
  2. Đặt cơ sở dữ liệu ở chế độ khẩn cấp
  3. Chuyển sang chế độ một người dùng
  4. Chạy CHECKDB với tùy chọn sửa chữa
  5. Trở lại chế độ nhiều người dùng
-- Step 1: Set to emergency mode
ALTER DATABASE [DatabaseName] SET EMERGENCY;
GO

-- Step 2: Single user mode
ALTER DATABASE [DatabaseName] SET SINGLE_USER;
GO

-- Step 3: Repair with no data loss
DBCC CHECKDB ([DatabaseName], REPAIR_REBUILD) WITH ALL_ERRORMSGS;
GO

-- Step 4: Return to multi-user
ALTER DATABASE [DatabaseName] SET MULTI_USER;
GO

13.3 Đánh giá sau sửa chữa

  1. Xem lại đầu ra CHECKDB để thực hiện hành động sửa chữa
  2. Kiểm tra các bảng hoặc dữ liệu bị thiếu
  3. Xác minh chức năng ứng dụng quan trọng
  4. Hãy cân nhắc khôi phục từ bản sao lưu nếu mất quá nhiều dữ liệu.

14. Bản sửa lỗi #12: Kiểm tra và sửa lỗi cấu hình FILESTREAM

Các vấn đề về cấu hình FILESTREAM có thể gây ra sự cố đang chờ khôi phục cơ sở dữ liệu SQL. Phương pháp này giải quyết các lỗi khôi phục cụ thể của FILESTREAM.

14.1 Các vấn đề phục hồi liên quan đến FILESTREAM

  • Lỗi kết nối trình điều khiển FILESTREAM
  • Cấu hình không khớp giữa SQL Server và hệ điều hành
  • Các vấn đề về thời gian trong quá trình khởi động dịch vụ
  • Các vấn đề về quyền với các container FILESTREAM

14.2 Khắc phục sự cố FILESTREAM

  1. Kiểm tra mức cấu hình FILESTREAM
  2. Xác minh tính năng Windows đã được bật
  3. Khởi động lại các dịch vụ cần thiết
  4. Kiểm tra quyền của container FILESTREAM

Kiểm tra cấu hình FILESTREAM:

SELECT SERVERPROPERTY('FilestreamEffectiveLevel') AS CurrentLevel;

Kích hoạt FILESTREAM ở cấp độ phiên bản:

EXEC sp_configure 'filestream access level', 2;
RECONFIGURE;

14.3 Thực hành tốt nhất của FILESTREAM

  • Đảm bảo cấu hình nhất quán sau mỗi lần khởi động lại.
  • Xác minh đường dẫn chứa FILESTREAM có thể truy cập được
  • Kiểm tra tính năng FILESTREAM của Windows đã được bật đúng cách chưa
  • Theo dõi các thông báo lỗi liên quan đến FILESTREAM

15. Bản sửa lỗi #13: Cập nhật SQL Server Phiên bản/Gói dịch vụ

Cũ hơn SQL Server Các phiên bản, đặc biệt là bản RTM, chứa các lỗi đã biết gây ra sự cố đang chờ khôi phục cơ sở dữ liệu SQL. Việc cập nhật lên gói dịch vụ mới nhất sẽ giải quyết được những vấn đề này.

15.1 Các vấn đề đã biết trong các phiên bản cũ hơn

  • SQL Server Lỗi phục hồi RTM năm 2005
  • Bản sửa lỗi dành riêng cho gói dịch vụ cho các quy trình phục hồi
  • Cập nhật tích lũy giải quyết các trường hợp ngoại lệ
  • Các vấn đề về khả năng tương thích với các phiên bản Windows mới hơn

15.2 Quy trình cập nhật

  1. Kiểm tra hiện tại SQL Server phiên bản
  2. Xác định gói dịch vụ mới nhất có sẵn
  3. Tải về từ Microsoft Download Center Liên kết bên ngoài
  4. Cửa sổ bảo trì theo lịch trình
  5. Cài đặt gói dịch vụ
  6. Khởi động lại dịch vụ
  7. Xác minh chức năng cơ sở dữ liệu

Kiểm tra phiên bản hiện tại:

SELECT @@VERSION;

15.3 Xác minh sau khi cập nhật

  1. Xác nhận số phiên bản đã thay đổi
  2. Kiểm tra tất cả các cơ sở dữ liệu trực tuyến đúng cách
  3. Chạy thử nghiệm chức năng cơ bản
  4. Theo dõi nhật ký lỗi để phát hiện bất kỳ sự cố mới nào

16. Sửa lỗi #14: Khôi phục cơ sở dữ liệu từ bản sao lưu

Khi các sự cố đang chờ xử lý trong quá trình khôi phục cơ sở dữ liệu SQL không thể được giải quyết bằng các phương pháp sửa chữa, việc khôi phục từ bản sao lưu tốt đã biết sẽ cung cấp giải pháp đáng tin cậy nhất với giới hạn mất dữ liệu có thể dự đoán được.

16.1 Khi sao lưu khôi phục là giải pháp

  • Nhiều nỗ lực sửa chữa đã thất bại
  • Dữ liệu sản xuất quan trọng đòi hỏi sự chắc chắn
  • Có cửa sổ mất dữ liệu chấp nhận được
  • Sự tham nhũng quá lớn để có thể sửa chữa

16.2 Quá trình khôi phục toàn bộ cơ sở dữ liệu

  1. Xác định bản sao lưu khả dụng gần đây nhất
  2. Đảm bảo đủ dung lượng đĩa để khôi phục
  3. Đưa cơ sở dữ liệu ngoại tuyến hoặc xóa nếu cần thiết
  4. Khôi phục từ tệp sao lưu
  5. Áp dụng sao lưu nhật ký nếu có

Khôi phục cơ bản từ bản sao lưu đầy đủ:

RESTORE DATABASE [DatabaseName] 
FROM DISK = 'C:\Backups\DatabaseName.bak'
WITH REPLACE;

Khôi phục bằng bản sao lưu nhật ký để phục hồi tại thời điểm cụ thể:

RESTORE DATABASE [DatabaseName] 
FROM DISK = 'C:\Backups\DatabaseName.bak'
WITH NORECOVERY, REPLACE;

RESTORE LOG [DatabaseName] 
FROM DISK = 'C:\Backups\DatabaseName_Log.trn'
WITH RECOVERY;

16.3 Kiểm tra và thử nghiệm

  1. Xác minh cơ sở dữ liệu đã trực tuyến thành công
  2. Kiểm tra tính toàn vẹn dữ liệu với CHECKDB
  3. Kiểm tra các chức năng ứng dụng quan trọng
  4. Xác nhận quá trình sao lưu/khôi phục đã hoàn tất mà không có lỗi

16.4 Tham khảo

Bạn có thể tìm hiểu thêm thông tin từ chúng tôi hướng dẫn toàn diện về cách sao lưu và khôi phục SQL Server cơ sở dữ liệu.

17. Bản sửa lỗi #15: Công cụ khôi phục SQL chuyên nghiệp

Khi các phương pháp thủ công không giải quyết được các vấn đề đang chờ phục hồi cơ sở dữ liệu SQL, phần mềm phục hồi chuyên dụng có thể trích xuất dữ liệu từ các cơ sở dữ liệu bị hỏng nghiêm trọng mà không thể sửa chữa bằng các phương pháp tiêu chuẩn.

17.1 Khi nào nên cân nhắc sử dụng công cụ của bên thứ ba

  • Hư hỏng nghiêm trọng vượt quá khả năng sửa chữa thủ công
  • Dữ liệu quan trọng không có bản sao lưu khả dụng
  • Nhiều lần cố gắng sửa chữa thủ công không thành công
  • Yêu cầu phục hồi quan trọng về thời gian

17.2 DataNumen SQL Recovery

DataNumen SQL Recovery là một mạnh mẽ SQL Server công cụ phục hồi cơ sở dữ liệu.

Dưới đây là các bước sử dụng:

  1. Ngăn chặn SQL Server Dịch vụ.
    Ngăn chặn SQL Server dịch vụ trong bảng điều khiển dịch vụ.
  2. Tạo bản sao các tệp của cơ sở dữ liệu ở trạng thái chờ phục hồi, bao gồm cả tệp MDF chính và tệp NDF phụ.
  3. Bắt đầu SQL Server Dịch vụ.
  4. Bắt đầu DataNumen SQL Recovery.
  5. Chọn bản sao thay vì tệp gốc làm nguồn của cơ sở dữ liệu cần phục hồi.
  6. Nhấp vào “Bắt đầu khôi phục” và làm theo hướng dẫn để khôi phục cơ sở dữ liệu.
  7. Sau quá trình phục hồi, một cơ sở dữ liệu phục hồi mới sẽ xuất hiện trong SQL Server chứa tất cả dữ liệu đã phục hồi.

Sử dụng DataNumen SQL Recovery để sửa chữa một hỏng hóc duy nhất SQL Server Tệp MDF và giải quyết lỗi đang chờ phục hồi cơ sở dữ liệu SQL.

18. Các tình huống khắc phục sự cố nâng cao

Các môi trường phức tạp đòi hỏi những phương pháp chuyên biệt để giải quyết các vấn đề đang chờ phục hồi cơ sở dữ liệu SQL.

18.1 Sự cố nhiều tệp cơ sở dữ liệu

Cơ sở dữ liệu có nhiều tệp dữ liệu (NDF) cần được xử lý cẩn thận:

  • Xác định nhóm tệp nào bị ảnh hưởng
  • Kiểm tra tất cả các tệp NDF để biết khả năng truy cập
  • Xem xét các tùy chọn khôi phục cụ thể cho nhóm tệp
  • Xử lý nhóm tệp chỉ đọc một cách thích hợp

18.2 Nhóm luôn sẵn sàng

Đang chờ khôi phục cơ sở dữ liệu SQL. luôn Mở môi trường:

  • Đầu tiên hãy kiểm tra trạng thái bản sao chính
  • Xác minh trạng thái đồng bộ hóa
  • Hãy cân nhắc việc xóa và thêm lại bản sao có vấn đề
  • Xem lại cấu hình nhóm khả dụng

18.3 Kịch bản cụm và tính khả dụng cao

Đang chờ khôi phục cơ sở dữ liệu SQL. cụm chuyển đổi dự phòng và tính khả dụng cao các tình huống:

  • Xác minh khả năng truy cập lưu trữ được chia sẻ
  • Kiểm tra thông tin liên lạc của nút cụm
  • Xem lại nhật ký cụm chuyển đổi dự phòng
  • Đảm bảo phân giải DNS đúng

18.4 WMI và các vấn đề cấp hệ thống

Các vấn đề ở cấp độ hệ thống có thể gây ra sự cố cơ sở dữ liệu:

  • Lỗi kho lưu trữ WMI
  • Cập nhật Windows không thành công
  • Lỗi đăng ký
  • Các vấn đề phụ thuộc dịch vụ

19. Chiến lược Phòng ngừa

Ngăn chặn các sự cố đang chờ phục hồi cơ sở dữ liệu SQL hiệu quả hơn là sửa chúng sau khi chúng xảy ra.

19.1 Thực hành sao lưu tốt nhất

  1. Triển khai lịch trình sao lưu toàn bộ tự động
  2. Cấu hình sao lưu khác biệt thường xuyên
  3. Thiết lập sao lưu nhật ký giao dịch thường xuyên
  4. Kiểm tra các thủ tục khôi phục sao lưu thường xuyên
  5. Lưu trữ bản sao lưu trên các hệ thống lưu trữ riêng biệt
  6. Xác minh tính toàn vẹn của bản sao lưu bằng RESTORE VERIFYONLY

19.2 Giám sát và Bảo trì

  1. Thiết lập cảnh báo giám sát dung lượng đĩa
  2. Lên lịch các hoạt động DBCC CHECKDB thường xuyên
  3. Màn Hình SQL Server nhật ký lỗi hàng ngày
  4. Thực hiện giám sát cơ sở hiệu suất
  5. Thiết lập SQL Server Cảnh báo của tác nhân về các lỗi nghiêm trọng

19.3 Cân nhắc về cơ sở hạ tầng

  • Lắp đặt hệ thống UPS để bảo vệ nguồn điện
  • Sử dụng bộ lưu trữ cấp doanh nghiệp với tính năng dự phòng
  • Thực hiện các thủ tục tắt máy thích hợp
  • Đảm bảo tính ổn định của mạng cho lưu trữ chia sẻ
  • Theo dõi tình trạng phần cứng thường xuyên

19.4 SQL Server Thực hành cấu hình tốt nhất

  • Chọn mô hình phục hồi phù hợp
  • Cấu hình cài đặt tự động tăng trưởng hợp lý
  • Tách riêng dữ liệu và tệp nhật ký trên các ổ đĩa khác nhau
  • Sử dụng tài khoản dịch vụ chuyên dụng với các đặc quyền tối thiểu
  • Giữ SQL Server được cập nhật với các gói dịch vụ mới nhất

20. Xử lý sự cố cây quyết định và phương pháp luận

Thực hiện phương pháp có hệ thống này khi gặp phải sự cố đang chờ phục hồi cơ sở dữ liệu SQL.

20.1 Phương pháp chẩn đoán có hệ thống

  1. Kiểm tra nhật ký lỗi trước – Luôn bắt đầu bằng SQL Server và nhật ký Windows
  2. Xác minh khả năng truy cập tệp – Đảm bảo tất cả các tệp cơ sở dữ liệu đều tồn tại và có thể đọc được
  3. Kiểm tra dung lượng ổ đĩa – Xác nhận không gian đủ cho các hoạt động phục hồi
  4. Hãy thử những cách sửa chữa đơn giản trước – Khởi động lại dịch vụ, ngoại tuyến/trực tuyến
  5. Tiến triển đến sửa chữa phức tạp – Chỉ sau khi các phương pháp đơn giản thất bại
  6. Hãy cân nhắc khôi phục từ bản sao lưu – Khi rủi ro sửa chữa quá cao

20.2 Lựa chọn phương pháp sửa chữa phù hợp

Rủi ro thấp (Thử trước):

  • Khởi động lại SQL Server dịch vụ
  • Kiểm tra và giải quyết dung lượng đĩa
  • Sửa quyền tệp
  • Cơ sở dữ liệu ngoại tuyến/trực tuyến

Rủi ro trung bình:

  • Sửa đường dẫn tệp
  • Tắt chức năng ĐÓNG TỰ ĐỘNG
  • Sửa lỗi cấu hình FILESTREAM
  • Dịch vụ bị trì hoãn khởi động

Rủi ro cao (Có thể mất dữ liệu):

  • Xóa tệp nhật ký và khởi động lại.
  • Tách/gắn lại cơ sở dữ liệu
  • Xây dựng lại nhật ký giao dịch
  • Sửa chữa chế độ khẩn cấp với DBCC KIỂM TRADB

20.3 Khi nào cần leo thang

Tìm kiếm sự trợ giúp chuyên nghiệp khi:

  • Nhiều phương pháp có nguy cơ cao đã thất bại
  • Cơ sở dữ liệu chứa dữ liệu quan trọng không thể thay thế
  • Sự tham nhũng ảnh hưởng đến nhiều cơ sở dữ liệu
  • Nghi ngờ có vấn đề ở cấp độ hệ thống
  • Hạn chế về thời gian đòi hỏi kết quả được đảm bảo

21. Câu hỏi thường gặp

H: Sự khác biệt giữa trạng thái cơ sở dữ liệu “ĐANG PHỤC HỒI” và “ĐANG CHỜ PHỤC HỒI” là gì?

A: “ĐANG PHỤC HỒI” nghĩa là cơ sở dữ liệu đang tích cực thực hiện các hoạt động phục hồi và sẽ tự động trực tuyến khi hoàn tất. “ĐANG CHỜ PHỤC HỒI” nghĩa là SQL Server Không thể bắt đầu quá trình khôi phục do gặp phải các trở ngại như thiếu tập tin, không đủ dung lượng hoặc dữ liệu bị hỏng. Quá trình khôi phục đang chờ xử lý và cần sự can thiệp thủ công để giải quyết.

H: Tôi nên thử bản sửa lỗi nào trước tiên khi gặp sự cố đang chờ khôi phục cơ sở dữ liệu SQL?

A: Luôn bắt đầu với những phương pháp an toàn nhất trước. Kiểm tra SQL Server Kiểm tra nhật ký lỗi, xác minh dung lượng ổ đĩa còn trống, sau đó thử khởi động lại. SQL Server Các dịch vụ này có rủi ro thấp, giải quyết hầu hết các vấn đề thường gặp khi khôi phục dữ liệu mà không gây mất dữ liệu.

H: Tôi nên đợi bao lâu trước khi thử phương pháp sửa lỗi khác?

A: Đối với việc khởi động lại dịch vụ, hãy đợi 2-3 phút để quá trình khởi động hoàn tất. Đối với các thay đổi trạng thái đơn giản như ngoại tuyến/trực tuyến, hãy đợi 30-60 giây. Đối với các sửa chữa phức tạp như DBCC CHECKDB, hãy đợi vài giờ tùy thuộc vào kích thước cơ sở dữ liệu. Không được làm gián đoạn quá trình khôi phục sau khi đã bắt đầu.

H: Tôi có bị mất dữ liệu khi khắc phục sự cố đang chờ phục hồi cơ sở dữ liệu SQL không?

A: Việc mất dữ liệu phụ thuộc vào phương pháp được sử dụng. Các phương pháp an toàn như khởi động lại dịch vụ, sửa lỗi dung lượng ổ đĩa và sửa lỗi quyền truy cập sẽ không gây mất dữ liệu. Các phương pháp rủi ro cao như sửa chữa ở chế độ khẩn cấp, xây dựng lại nhật ký hoặc xóa các tập tin nhật ký có thể dẫn đến mất dữ liệu đáng kể. Luôn luôn thử các phương pháp an toàn trước.

H: Tôi có thể ngăn chặn các sự cố đang chờ phục hồi cơ sở dữ liệu SQL xảy ra không?

A: Vâng, hầu hết các sự cố đều có thể phòng ngừa được thông qua việc bảo trì đúng cách. Hãy thực hiện sao lưu thường xuyên, theo dõi dung lượng ổ đĩa, duy trì dung lượng lưu trữ đầy đủ, sử dụng bộ nguồn dự phòng UPS, thực hiện các thao tác DBCC CHECKDB định kỳ và giữ cho... SQL Server được cập nhật với các gói dịch vụ mới nhất.

H: Tôi có nên thử sửa chữa cơ sở dữ liệu sản xuất trong giờ làm việc không?

A: Tuyệt đối không nên thực hiện các phương pháp sửa chữa rủi ro cao trên cơ sở dữ liệu sản xuất trong giờ làm việc. Hãy lên lịch bảo trì cho các sửa chữa phức tạp. Tuy nhiên, các phương pháp an toàn như khởi động lại dịch vụ hoặc khắc phục sự cố thiếu dung lượng ổ đĩa có thể được thực hiện ngay lập tức nếu chúng gây cản trở các hoạt động quan trọng.

H: Khi nào tôi nên khôi phục từ bản sao lưu thay vì cố gắng sửa chữa?

A: Khôi phục từ bản sao lưu khi nhiều lần sửa chữa không thành công, khi xử lý dữ liệu sản xuất quan trọng không có nguy cơ bị hỏng thêm, khi bạn có bản sao lưu gần đây với thời gian mất dữ liệu chấp nhận được hoặc khi phương pháp sửa chữa mất nhiều thời gian hơn so với thao tác khôi phục.

H: Làm sao tôi biết được tệp cơ sở dữ liệu của tôi bị hỏng hay không thể truy cập được?

Đáp: Kiểm tra SQL Server Nhật ký lỗi cho các thông báo lỗi cụ thể. Sự cố truy cập tệp hiển thị lỗi "không tìm thấy tệp" hoặc lỗi cấp quyền. Lỗi hỏng thường hiển thị lỗi tổng kiểm tra, lỗi cấp trang hoặc vi phạm tính nhất quán. Sử dụng DBCC CHECKDB để kiểm tra lỗi hỏng một cách chắc chắn khi cơ sở dữ liệu có thể truy cập được.

H: Cách an toàn nhất để sao chép các tệp cơ sở dữ liệu trước khi sửa chữa là gì?

A: Dừng lại SQL Server dịch vụ hoàn toàn, sau đó sao chép cả tệp MDF và LDF vào vị trí sao lưu. Hoặc, hãy sử dụng lệnh sao lưu cơ sở dữ liệu nếu cơ sở dữ liệu vẫn có thể truy cập được. Không bao giờ sao chép tệp trong khi SQL Server đang chạy vì điều này có thể tạo ra các bản sao không nhất quán.

H: Các sự cố đang chờ phục hồi cơ sở dữ liệu SQL có thể ảnh hưởng đến nhiều cơ sở dữ liệu cùng lúc không?

A: Có, các vấn đề ở cấp độ hệ thống như không đủ dung lượng đĩa, sự cố tài khoản dịch vụ, lỗi lưu trữ hoặc SQL Server Lỗi cấu hình có thể ảnh hưởng đến nhiều cơ sở dữ liệu. Luôn kiểm tra xem các cơ sở dữ liệu khác có gặp sự cố tương tự hay không để xác định các vấn đề hệ thống rộng hơn.

H: Tôi nên kiểm tra quy trình khôi phục cơ sở dữ liệu của mình thường xuyên như thế nào?

A: Kiểm tra quy trình khôi phục hàng tháng cho các cơ sở dữ liệu quan trọng, hàng quý cho các cơ sở dữ liệu quan trọng. Bao gồm kiểm tra các kịch bản khôi phục khác nhau như khôi phục tại một thời điểm, khôi phục chuỗi nhật ký và quy trình khôi phục khẩn cấp. Ghi lại và tính thời gian cho mỗi lần kiểm tra để lập kế hoạch ứng phó khẩn cấp.

H: Khi nào tôi nên liên hệ với Bộ phận hỗ trợ của Microsoft hoặc thuê sự trợ giúp chuyên nghiệp?

A: Tìm kiếm sự trợ giúp chuyên nghiệp khi nhiều lần sửa chữa không thành công, xử lý dữ liệu quan trọng mà không có bản sao lưu, gặp phải lỗi phức tạp trên nhiều cơ sở dữ liệu, gặp thông báo lỗi không có trong tài liệu hoặc khi hạn chế về thời gian yêu cầu phải đảm bảo kết quả khôi phục.

H: Các công cụ phục hồi SQL của bên thứ ba có đáng để đầu tư không?

A: Các công cụ phục hồi dữ liệu rất hữu ích khi các phương pháp thủ công thất bại và không có bản sao lưu nào. Hầu hết các công cụ đều cung cấp phiên bản dùng thử miễn phí để kiểm tra khả năng phục hồi trước khi mua. Hãy cân nhắc chi phí so với dịch vụ chuyên nghiệp, giá trị dữ liệu và xác suất thành công. Các công cụ hoạt động tốt nhất đối với các lỗi cấu trúc nhưng có thể không phục hồi được tất cả các loại dữ liệu.

H: Tôi phải làm gì nếu lỗi khôi phục cơ sở dữ liệu SQL liên tục xảy ra?

A: Các sự cố lặp lại cho thấy hệ thống có vấn đề tiềm ẩn. Hãy kiểm tra lỗi phần cứng, thiếu tài nguyên, sự cố hệ thống lưu trữ hoặc vấn đề cấu hình. Theo dõi Nhật ký Sự kiện Windows, triển khai giám sát toàn diện và cân nhắc nâng cấp phần cứng hoặc chuyển sang hệ thống lưu trữ đáng tin cậy hơn.

22. Kết luận và tham khảo nhanh

Các sự cố đang chờ xử lý khi khôi phục cơ sở dữ liệu SQL có thể được giải quyết bằng 15 phương pháp đã được chứng minh này, từ việc khởi động lại dịch vụ đơn giản đến các sửa chữa khẩn cấp phức tạp.

22.1 Bảng tóm tắt sửa lỗi nhanh

Phương pháp sửa chữa Mức độ rủi ro Rủi ro mất dữ liệu Được sử dụng tốt nhất cho
Khởi động lại SQL Server Thấp Không áp dụng Các vấn đề về thời gian, khóa tạm thời
Kiểm tra dung lượng ổ đĩa Thấp Không áp dụng Các lỗi liên quan đến không gian
Bắt đầu bị trì hoãn Thấp Không áp dụng Các vấn đề về thời gian lưu trữ
Sửa quyền Thấp Không áp dụng Lỗi truy cập bị từ chối
Đường dẫn tệp chính xác Thấp Không áp dụng Thay đổi đường dẫn, di chuyển
Ngoại tuyến / Trực tuyến Trung bình Thấp Sự không nhất quán của nhà nước
Tắt chức năng ĐÓNG TỰ ĐỘNG Thấp Không áp dụng Chu kỳ đóng/mở thường xuyên
Xóa tệp nhật ký Cao Có Nhật ký bị hỏng, môi trường phát triển
Tháo/gắn lại Cao Có Nhật ký bị thiếu hoặc bị hỏng
Xây dựng lại nhật ký Cao Có Thiếu tệp LDF
Sửa chữa khẩn cấp với DBCC CHECKDB Rất cao Có Tham nhũng nghiêm trọng, biện pháp cuối cùng
Sửa lỗi FILESTREAM Trung bình Không áp dụng Các vấn đề về cấu hình FILESTREAM
Cập nhật SQL Server Trung bình Không áp dụng Lỗi phiên bản đã biết
Khôi phục lại từ bản sao lưu Thấp Kiểm soát Khi các phương pháp sửa chữa không thành công
Công cụ khôi phục Trung bình Khác nhau Tham nhũng nghiêm trọng, không có bản sao lưu

22.2 Danh sách kiểm tra ứng phó khẩn cấp

5 phút đầu tiên:

  1. kiểm tra SQL Server nhật ký lỗi
  2. Xác minh khả năng truy cập tệp cơ sở dữ liệu
  3. Kiểm tra dung lượng đĩa trống
  4. Thử khởi động lại dịch vụ
  5. Tài liệu thông báo lỗi

15 phút tiếp theo:

  1. Thử chế độ ngoại tuyến/trực tuyến nếu khởi động lại dịch vụ không thành công
  2. Kiểm tra và khắc phục các vấn đề cấp phép rõ ràng
  3. Xác minh đường dẫn tệp là chính xác
  4. Xem lại nhật ký sự kiện Windows
  5. Đánh giá tính khả dụng của bản sao lưu

22.3 Tài nguyên Bổ sung

Hãy nhớ: Phòng ngừa bằng cách sao lưu, giám sát và bảo trì đúng cách luôn tốt hơn phục hồi. Việc kiểm tra thường xuyên các quy trình này trong môi trường phi sản xuất sẽ đảm bảo bạn được chuẩn bị sẵn sàng khi xảy ra sự cố đang chờ phục hồi cơ sở dữ liệu SQL.


Lưu ý

Nguyên Sinh là quản trị viên cơ sở dữ liệu cao cấp (DBA) với hơn 10 năm kinh nghiệm trong SQL Server môi trường và quản lý cơ sở dữ liệu doanh nghiệp. Ông đã giải quyết thành công hàng trăm tình huống khôi phục cơ sở dữ liệu trên khắp các tổ chức dịch vụ tài chính, chăm sóc sức khỏe và sản xuất.

Yuan chuyên về SQL Server Ông có kinh nghiệm thực tế sâu rộng trong việc quản lý cơ sở dữ liệu hàng terabyte, triển khai các Nhóm Luôn Sẵn Sàng (Always On Availability Groups) và phát triển các chiến lược sao lưu và phục hồi tự động cho các hệ thống kinh doanh quan trọng.

Nhờ chuyên môn kỹ thuật và phương pháp thực tế của mình, Yuan tập trung vào việc tạo ra các hướng dẫn toàn diện giúp quản trị viên cơ sở dữ liệu và chuyên gia CNTT giải quyết các vấn đề phức tạp SQL Server thách thức một cách hiệu quả. Anh ấy luôn cập nhật những thông tin mới nhất SQL Server phát hành và công nghệ cơ sở dữ liệu đang phát triển của Microsoft, thường xuyên kiểm tra các tình huống phục hồi để đảm bảo các khuyến nghị của ông phản ánh những phương pháp hay nhất trong thực tế.

Có thắc mắc về SQL Server phục hồi hoặc cần thêm hướng dẫn khắc phục sự cố cơ sở dữ liệu? Yuan hoan nghênh phản hồi và đề xuất để cải thiện các nguồn lực kỹ thuật này.

Chia sẻ ngay bây giờ: