Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách thay đổi mô hình khôi phục của cơ sở dữ liệu máy chủ SQL bằng T-SQL

SQL Server có ba mô hình khôi phục; đăng nhập đơn giản, đầy đủ và hàng loạt. Mỗi cơ sở dữ liệu sử dụng một trong các cài đặt này.

Các hoạt động sao lưu và khôi phục xảy ra trong bối cảnh của mô hình khôi phục của cơ sở dữ liệu

Bạn có thể thay đổi mô hình khôi phục của cơ sở dữ liệu bằng cách sử dụng ALTER DATABASE cùng với câu lệnh SET RECOVERY tùy chọn.

Các tùy chọn khả dụng khi sử dụng ALTER DATABASE để đặt mô hình khôi phục là:

  • SIMPLE
  • FULL
  • BULK_LOGGED

Bạn sẽ cần ALTER quyền trên cơ sở dữ liệu để thực hiện những thay đổi như vậy.

Ví dụ

Giả sử chúng ta có một cơ sở dữ liệu có tên là PetHotel .

Chúng tôi có thể kiểm tra mô hình khôi phục hiện tại của nó bằng cách truy vấn sys.databases xem danh mục:

SELECT 
    name, 
    recovery_model_desc  
FROM sys.databases
WHERE name = 'PetHotel';

Kết quả:

+----------+-----------------------+
| name     | recovery_model_desc   |
|----------+-----------------------|
| PetHotel | SIMPLE                |
+----------+-----------------------+

PetHotel cơ sở dữ liệu hiện đang sử dụng mô hình khôi phục đơn giản.

Hãy thay đổi nó thành mô hình khôi phục đầy đủ:

USE master;  
ALTER DATABASE PetHotel 
SET RECOVERY FULL;

Đã xong.

Bây giờ chúng ta hãy kiểm tra kết quả:

SELECT 
    name, 
    recovery_model_desc  
FROM sys.databases
WHERE name = 'PetHotel';

Kết quả:

+----------+-----------------------+
| name     | recovery_model_desc   |
|----------+-----------------------|
| PetHotel | FULL                  |
+----------+-----------------------+

Mô hình khôi phục đã được thay đổi thành công như đã chỉ định.

Cân nhắc quan trọng

Khi chuyển từ chế độ khôi phục đơn giản sang một trong những chế độ khác, công tắc chỉ có hiệu lực sau lần sao lưu dữ liệu đầu tiên.

Do đó, ngay sau khi bạn chuyển từ chế độ khôi phục đơn giản sang mô hình khôi phục được ghi nhật ký hàng loạt hoặc đầy đủ, bạn nên thực hiện sao lưu cơ sở dữ liệu đầy đủ hoặc khác biệt để bắt đầu chuỗi nhật ký.

Nếu bạn chuyển sang mô hình khôi phục đơn giản, sau đó hãy nhớ tắt mọi công việc đã lên lịch để sao lưu nhật ký giao dịch (mô hình khôi phục đơn giản không sử dụng sao lưu nhật ký).

Ngoài ra, mô hình khôi phục hàng loạt là đặc biệt cho các hoạt động hàng loạt. Nếu bạn chuyển từ mô hình khôi phục hoàn toàn sang mô hình ghi nhật ký hàng loạt cho mục đích này, bạn nên chuyển về chế độ khôi phục hoàn toàn sau khi bạn đã thực hiện các hoạt động hàng loạt.

Sau khi chuyển từ mô hình khôi phục đã ghi hàng loạt về mô hình khôi phục đầy đủ, hãy nhớ sao lưu nhật ký.

Xem Mô hình khôi phục trên trang web của Microsoft để biết tổng quan về từng mô hình khôi phục.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để chuyển sqlparameter tới IN ()?

  2. Cách cài đặt Azure Data Studio trên máy Mac

  3. Cách khắc phục “Tên đối tượng‘ OPENJSON ’không hợp lệ.” trong SQL Server

  4. Sử dụng Cảnh báo và Toán tử trong SQL Server

  5. Câu lệnh ALTER TABLE xung đột với ràng buộc FOREIGN KEY trong SQL Server - Hướng dẫn sử dụng SQL Sever / TSQL Phần 69