SSMS
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> SSMS

SQL Server:Làm thế nào để đính kèm / sửa chữa cơ sở dữ liệu bị tách rời / bị hỏng?

Bạn có thể thử một cách giải quyết khác. Tóm lại:

  1. Tạo một DB giả có cùng tên (có thể phải xóa DB thực trước, lưu các tệp gốc hoặc đổi tên sau đó).
  2. Tắt dòng giả (tách và (đặt ngoại tuyến hoặc dừng dịch vụ SQL)).
  3. Xóa các tệp giả, thay thế bằng các tệp DB thực.
  4. Cố gắng đính kèm lại de DB

Chỉnh sửa

Theo ghi chú của OP nhận xét, bạn cũng có thể cần phải xây dựng lại nhật ký (nếu bạn bị mất giao dịch)

  1. ALTER DATABASE [MyDatabase] REBUILD ĐĂNG NHẬP (NAME =’MyDatabaseLog’, FILENAME =’D:\ Microsoft SQL Server \ YourDataPath \ Data \ Logfile.ldf’)

    và đưa DB vào nhật ký nhiều người dùng (việc tắt DB có thể yêu cầu bạn đặt nó ở chế độ sử dụng một lần)

  2. ALTER DATABASE [nomdb] SET MULTI_USER

Để biết tất cả các chi tiết máu me, bạn có thể tham khảo Bài viết của Paul Randal

(Lưu ý trong bài viết này tác giả sử dụng CHẾ ĐỘ KHẨN CẤP để (cố gắng) sửa chữa nhật ký giao dịch)

Tôi đã sử dụng nó thành công nhưng tùy thuộc vào mức độ thiệt hại hoặc những chi tiết khác, nó có thể là một nhiệm vụ bất khả thi. Cân nhắc khôi phục bản sao lưu.

Lưu ý rằng các pha nguy hiểm này là tốt trong máy chủ phát triển nhưng bạn thực sự cần phải lập kế hoạch (và đi sâu) để khắc phục thảm họa trong máy chủ sản xuất.




  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Trình điều khiển Simba Mongo ODBC:dữ liệu trả về không khớp với độ dài dữ liệu mong đợi

  2. Hoàn thành cú pháp Regex cho Sql Server Management Studio

  3. Viết truy vấn để tạo một số tập lệnh để đổi tên một số cột trong toàn bộ cơ sở dữ liệu

  4. Sử dụng Đính kèm làm Nâng cấp trong Lõi Khung Thực thể

  5. Mất IntelliSense trong SQL Server Management Studio