Có vẻ như các khái niệm khác nhau khó hiểu của bạn ở đây. Bắt đầu với Quản lý nhật ký giao dịch và sao lưu Tổng quan chủ đề trong Sách trực tuyến.
Có phải vấn đề gốc là khi bạn khôi phục lại bản sao lưu đầy đủ sang máy chủ khác, nhật ký giao dịch sẽ tiêu tốn nhiều dung lượng hơn mức bạn có sẵn không?
Nếu vậy, bản hack mà tôi đã mô tả trong câu trả lời cho câu hỏi Có thể khôi phục lại máy chủ sql-bak và thu nhỏ nhật ký cùng một lúc không? có thể hữu ích
Nhật ký giao dịch của bạn đang phát triển, đang phát triển và đang phát triển vì cơ sở dữ liệu của bạn đã được khôi phục hoàn toàn nhưng bạn không thực hiện sao lưu nhật ký? Xem ở đây và ở đây .
Khi tôi sao lưu cơ sở dữ liệu vào tệp bak, có cách nào để loại trừ nhật ký giao dịch trong bản sao lưu đó không?
Không. Một bản sao lưu dữ liệu sẽ bao gồm một phần của nhật ký giao dịch, ít nhất là phần của nhật ký được tạo kể từ khi sao lưu bắt đầu. Tuy nhiên, đó không phải là một tỷ lệ đáng kể của nhật ký trừ khi bạn có các giao dịch chạy rất lâu.
Lưu ý rằng khi bạn khôi phục bản sao lưu dữ liệu, cơ sở dữ liệu sẽ được tạo lại với cùng kích thước tệp dữ liệu và tệp nhật ký như trong cơ sở dữ liệu nguồn, bất kể tệp dữ liệu đầy đủ hay phần hoạt động của nhật ký là bao nhiêu. Nếu đây là vấn đề bạn gặp phải, hãy xem bản hack trước đây của tôi để khắc phục tình trạng thiếu không gian để khôi phục.
Hoặc tôi đang nghĩ về điều này sai, để khôi phục cơ sở dữ liệu ban đầu là nội dung của nhật ký giao dịch cần thiết?
Xem ở trên, một tỷ lệ của nhật ký sẽ được bao gồm trong một bản sao lưu đầy đủ.
Tôi không thể thu nhỏ nhật ký giao dịch vì cơ sở dữ liệu đang sử dụng bản sao và tôi sẽ phải phá vỡ bản sao.
Không có lý do tại sao bạn không thể thu nhỏ nhật ký với sao chép tại chỗ (bạn sẽ chỉ có thể thu nhỏ phần không hoạt động) nhưng:
- Nó sẽ không làm thay đổi kích thước của bản sao lưu dữ liệu của bạn.
- Nó có thể sẽ phát triển trở lại kích thước hiện tại của nó.
- Nhật ký giao dịch lớn có thể là do không thực hiện sao lưu nhật ký.
- Bạn không nên thu nhỏ nhật ký .