Xin chào Tôi có cơ sở dữ liệu sản xuất và cơ sở dữ liệu báo cáo được nhân rộng của nó. Cách thu nhỏ tệp nhật ký giao dịch trong cơ sở dữ liệu sản xuất khi kích thước tệp nhật ký ngày càng tăng. Tôi đã thử DBCC SHRINKFILE và SHRINKDATABASE lệnh nhưng nó không hoạt động đối với tôi. Tôi không thể tách rời và co lại và đính kèm lại dưới dạng db trong bản sao. Xin hãy giúp tôi trong vấn đề này.Cách thu hẹp Nhật ký giao dịch trong cơ sở dữ liệu máy chủ sql trong bản sao
Trả lời
Bạn có lịch biểu sao lưu thường xuyên tại chỗ không?
Nếu không, tôi đề nghị bạn đọc bài viết tuyệt vời này: 8 Steps to better Transaction Log throughput
Cơ sở dữ liệu sẽ không cho phép bạn loại bỏ dữ liệu giao dịch mà không được sao lưu. Trước tiên, bạn phải sao lưu nhật ký giao dịch, sau đó bạn có thể thu nhỏ nó.
Điều đó tôi đã thử, nhưng đã không làm việc cho tôi. Kích thước chưa được giảm –
Nếu DB của bạn ở chế độ khôi phục đầy đủ, bạn cần đảm bảo rằng bạn đang thực hiện sao lưu nhật ký giao dịch cũng như sao lưu cơ sở dữ liệu. – KSimons
Shrink logfile với shrinkfile dbcc
Sau đó cắt các tập tin log sử dụng
DatabaseName Sao lưu với truncate_only
Sau đó, thu nhỏ logfile lại
tôi đã sử dụng Red-Gate's SQL Backup công cụ để chăm sóc sao lưu. Sau đó, tôi chỉ sử dụng bảng điều khiển quản lý để phát hành lệnh thu nhỏ trên tệp nhật ký (yêu cầu nó sắp xếp lại các trang trước khi giải phóng dung lượng không sử dụng).
Hoạt động như một sự quyến rũ.
Đầu tiên kiểm tra những gì đang gây ra cơ sở dữ liệu của bạn để không co lại bằng cách chạy:
SELECT name, log_reuse_wait_desc FROM sys.DATABASES
Nếu bạn đang bị chặn bởi một giao dịch, tìm cái nào với:
DBCC OPENTRAN
Giết giao dịch và thu nhỏ của bạn db.
Nếu nguyên nhân của việc chặn là 'REPLICATION' và bạn chắc chắn rằng các bản sao của bạn được đồng bộ, bạn có thể cần đặt lại trạng thái của các giao dịch được sao chép. Để xem trạng thái của những gì các cơ sở dữ liệu vẫn nghĩ rằng cần phải được nhân rộng sử dụng:
DBCC loginfo
Bạn có thể thiết lập lại điều này bằng cách đầu tiên chuyển sang đại lý đọc tắt (Tôi thường chỉ cần bật toàn bộ SQL Server Agent off), và sau đó chạy truy vấn đó trên cơ sở dữ liệu mà bạn muốn khắc phục sự cố sao chép:
EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0, @time= 0, @reset = 1
Đóng kết nối nơi bạn đã thực hiện truy vấn đó và khởi động lại SQL Server Agent (hoặc chỉ tác nhân đọc). Bạn nên tất cả các thiết lập để thu nhỏ db của bạn ngay bây giờ.
Giải pháp chính xác tôi cần - giải quyết vấn đề đăng nhập của tôi. – Dragonsdoom
- 1. Làm cách nào để thu nhỏ nhật ký giao dịch trên cơ sở dữ liệu MS SQL 2000?
- 2. Khóa cơ sở dữ liệu máy chủ SQL với PHP
- 3. Nhật ký giao dịch cho cơ sở dữ liệu đầy đủ
- 4. Đăng nhập máy chủ - trong cơ sở dữ liệu hoặc tệp nhật ký?
- 5. Máy chủ SQL: cách truy vấn khi sao lưu nhật ký giao dịch cuối cùng đã được thực hiện?
- 6. Cắt bớt tệp nhật ký giao dịch SQL Server
- 7. Đọc nhật ký giao dịch SQL Server
- 8. SQL Server 2005, cách sao chép Sơ đồ cơ sở dữ liệu sang máy chủ khác
- 9. Máy chủ SQL: Nhập cơ sở dữ liệu từ .mdf?
- 10. Tệp nhật ký cho cơ sở dữ liệu đầy đủ
- 11. Node.js + postgres quản lý cơ sở dữ liệu giao dịch
- 12. Sao chép các hàng giữa các cơ sở dữ liệu trong máy chủ SQL
- 13. Nhật ký giao dịch cho tên cơ sở dữ liệu 'databasename' đã đầy.
- 14. Nhật ký giao dịch lớn với cơ sở dữ liệu SQL Server ở chế độ khôi phục đơn giản
- 15. Làm cách nào để giảm kích thước tệp nhật ký máy chủ sql của tôi?
- 16. giữ bảng nhật ký trong cơ sở dữ liệu sqlite?
- 17. Giao dịch cơ sở dữ liệu Magento
- 18. Cách sao chép cơ sở dữ liệu máy chủ sql từ máy chủ này sang máy chủ khác mà không có bất kỳ bản sao lưu nào
- 19. Làm cách nào tôi có thể quản lý kích thước nhật ký máy chủ SQL
- 20. Cập nhật trường bit sql trong cơ sở dữ liệu
- 21. Giao dịch trong cơ sở dữ liệu wordpress
- 22. Có phải ghi các tệp nhật ký máy chủ vào cơ sở dữ liệu hay không?
- 23. Lặp qua cơ sở dữ liệu trên máy chủ và cập nhật dữ liệu
- 24. Cách thực hiện cuộn SQL từ nhật ký giao dịch
- 25. Học máy trên dữ liệu nhật ký máy chủ
- 26. Cách tìm số cột của bất kỳ bảng nào trong bất kỳ cơ sở dữ liệu nào từ cơ sở dữ liệu chủ của máy chủ sql?
- 27. Cập nhật bảng cơ sở dữ liệu từ một bảng cơ sở dữ liệu SQL Server sang bảng cơ sở dữ liệu SQL Server khác?
- 28. Nhiều lệnh giao dịch SQL qua các kết nối cơ sở dữ liệu khác nhau
- 29. Giao dịch ứng dụng phi cơ sở dữ liệu
- 30. Cách tắt Nhật ký giao dịch trong SQL Server 2008
không có lịch biểu sao lưu. Tôi cần xóa nhật ký trancation –
Lý do bạn có nhật ký giao dịch lớn là do bạn không sao lưu cơ sở dữ liệu của mình thường xuyên. –