SQL Server LOG

Giới thiệu về SQL Server LOG

Trong SQL Server, LOG (log) là một phần quan trọng của hệ thống quản lý cơ sở dữ liệu. Nó có chức năng ghi lại mọi thay đổi và hoạt động diễn ra trong cơ sở dữ liệu. LOG giúp cho việc khôi phục dữ liệu trở nên dễ dàng sau khi xảy ra sự cố, và cũng hỗ trợ việc theo dõi các giao dịch.

Định nghĩa

Transaction Log (LOG giao dịch) là một tệp tin lưu trữ các thông tin về tất cả các giao dịch và các thay đổi dữ liệu diễn ra bên trong cơ sở dữ liệu. LOG không chỉ cung cấp khả năng khôi phục dữ liệu sau các sự cố mà còn giữ cho tính toàn vẹn của dữ liệu trong hệ thống.

Cú pháp

Cú pháp liên quan đến công việc ghi chép và quản lý LOG có thể bao gồm các truy vấn cơ bản và các lệnh để xóa hoặc sao lưu LOG. Một vài lệnh cơ bản bao gồm:

  • BACKUP LOG: Sử dụng để sao lưu LOG giao dịch.
  • DBCC SHRINKFILE: Sử dụng để thu nhỏ kích thước tệp LOG.

Ví dụ 1: Sao lưu Transaction Log

BACKUP LOG [TenCSDL]
TO DISK = N'C:\Backups\TenCSDL_LogBackup.trn'
WITH NOFORMAT, NOINIT,
SKIP, NOREWIND, NOUNLOAD, STATS = 10

Ví dụ trên cho thấy cách để sao lưu LOG giao dịch của một cơ sở dữ liệu với tên là "TenCSDL". Tệp sao lưu sẽ được lưu vào thư mục "C:\Backups\" với tên tệp là "TenCSDL_LogBackup.trn".

Ví dụ 2: Thu nhỏ kích thước Transaction Log

DBCC SHRINKFILE (N'TenCSDL_log' , 1)

Trong ví dụ này, chúng ta sử dụng lệnh DBCC SHRINKFILE để thu nhỏ kích thước của tệp LOG cho cơ sở dữ liệu "TenCSDL". Kích thước cuối cùng sẽ là 1MB.

Kết luận

Transaction Log là một thành phần không thể thiếu trong SQL Server. Việc quản lý LOG giao dịch một cách hợp lý không chỉ giúp bảo vệ dữ liệu mà còn cải thiện hiệu suất của hệ thống. Hy vọng rằng những kiến thức cơ bản về SQL Server LOG trong bài viết này sẽ giúp bạn có được cái nhìn rõ hơn về tầm quan trọng và cách sử dụng nó trong quá trình phát triển và quản lý cơ sở dữ liệu.