Làm thế nào cấu hình SQL Server Log Shipping ?

Log Shipping

Để hiểu về Log Shipping trước tiên hãy cùng nói về HA (High Availability), một giải pháp giúp cơ sở dữ liệu (DB) hay network, server array hoặc cluster..vv.. luôn có thể truy cập 24/7 và trong bất kỳ điều kiện nào. Đi sâu vào DB hay MS SQL thì ta có 5 lựa chọn để thiết lập HA bao gồm:

  • Replication
  • Log Shipping
  • Mirroring
  • Clustering
  • AlwaysON Availability Groups

Vậy SQL Server Log Shipping là gì ?

Theo Microsoft Log Shipping hỗ trợ tất cả các phiên bản SQL Server (all supported versions) – Windows only và Azure SQL Managed Instance. Với SQL Server Log Shipping sẽ tự động gửi các transaction log backups từ “primary database on a primary server instance” tới một hoặc nhiều “secondary databases on separate secondary server instances”.

Các bản transaction log backups được áp dụng cho từng secondary databases riêng biệt. Với option mở rộng là third server instance sẽ là monitor server, ghi lại history, status of backup, restore operations và tạo cảnh báo nếu có sự cố xảy ra trong quá trình chạy Log Shipping.

Để hiểu thêm về giải pháp này các bạn có thể tham khảo thêm tại: https://docs.microsoft.com

Bạn sẽ có lợi ích gì khi sử dụng SQL Server Log Shipping ?

  • Là giải pháp dùng cho disaster-recovery giúp khôi phục single primary database hoặc một or nhiều secondary databases.
  • Hỗ trợ giới hạn read-only access to secondary databases (trong quá trình restore jobs)
  • Cho phép có 1 khoảng thời gian delay backup giữa primary server và secodary server giúp bạn có thể khôi phục tại thời điểm mà bạn chỉ định.

Tổng quan về SQL Server Log Shipping

Log shipping sẽ có ba bước chính để thực hiện gôm:

  1. Back up the transaction log at the primary server instance.
  2. Copy the transaction log file to the secondary server instance.
  3. Restore the log backup on the secondary server instance.

File log có thể ship tới nhiều secondary server instances. Trong trường hợp bạn có nhiều secondary server instances. Tuy nhiên log shipping không hỗ trợ automatically fail over from the primary server to the secondary server. Nếu primary database trở thành unavailable, bấy kỳ secondary databases đều có thể trở thành online với manually.

Mô hình Log Shipping với ba bước backup, copy, and restore jobs:

Configuration showing backup, copy, & restore jobs

Làm thế nào cấu hình SQL Server Log Shipping ?

Trong bài tip này sharemystudio sẽ áp dụng một mô hình thực tế gồm AD, Primary và Secodary để dễ hình dung các bạn có thể tham khảo thêm mô hình sau:

Log Shipping

Thông tin cấu hình cơ bản cho các thành phần bao gồm gồm:

Log Shipping 01

Sau khi đã hoàn tất cấu hình cơ bản, tại Primary server hãy sử dụng SSMS để connect tới DB và bắt đầu cấu hình Log Shippping.

Step1: Lựa chọn DB bạn muốn cấu hình VD: DB01, Right click in database -> choose tasks -> click Ship Transaction Logs.

Step2: Turn on Log shipping: In tab Database properties – DB01 -> click ‘Enable this as primary database in a log shipping configuration’

Step3: Config Transaction log backups: In Transaction log backups -> click Backup Settings.

Step4: Config Network path and backup folder: Type network path and backup folder as you config.

Step5: Config time for backup job: Click choose Schedule -> In tab schedule -> in tab Daily freuency -> in ‘occurs every’ set time you want config -> OK.

Step6: Config Secondary database: In tab Secondary database -> click Add.

Log Shipping

Step7: Connect to secondary database:

In tab secondary database settings -> click choose Connect. Type ip + port (Secondary Server), choose authentication with SQL Server Authentication, type login and password.

Step8: Choose backup into the secondary database: In tab Initialize Secondary Database -> Click choose ‘Yes, generate a full backup of the primary database and restore it into the secondary database (and create the secondary database if it doesn’t exist)’ -> OK

Step9: Config destination folder for copied files: In tab Copy file, type Destination folder for copied files

Step10: Config time for copy file: In Copy Job -> click Schedule. In tab New Job Schedule -> In Daily frequency -> Occurs every -> set time as you want config -> OK

Step11: Config Restore Transaction Log:

In tab restore Transaction Log click choose ‘Standby mode’.

Step12: Config file time for restore job: In Restore job -> click Schedule -> Daily frequency -> Occurs every -> set time you want config -> OK.

Step13: Finish config: After config all option -> click choose OK -> check status Log Shipping Configuration

Log Shipping

Step14: Check Status DB: Connect to Secondary server with SSMS and check status of DB. DB must show status (Standby /Read-Only).

Step15: Monitor Log Shipping Status: Check status in primary and secondary server, Right click to SQL Server -> click Reports -> click Transaction Log Shipping Status. If status is “good” very thing is done.

Chúc các bạn thành công !

ADS

Leave a Reply

Your email address will not be published. Required fields are marked *