KB3178297 - Không thể tự động dọn dẹp dữ liệu trong Kho Truy vấn trên các phiên bản khác ngoài phiên bản Enterprise và Developer SQL Server 2016

Áp dụng cho
SQL Server 2016 Express - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Web - duplicate (do not use)

Triệu chứng

Có thể không dọn dẹp dữ liệu tự động lưu trữ được SQL Server phiên bản 2016 khác với Phiên bản dành cho Doanh nghiệp và Nhà phát triển. Do đó, nếu dữ liệu không được dọn sạch theo cách thủ công, dung lượng được sử dụng bởi Kho Truy vấn sẽ tăng theo thời gian cho đến khi đạt đến giới hạn được đặt cấu hình. Nếu vấn đề này không được giải quyết, không gian đĩa phân bổ cho các bản ghi lỗi cũng sẽ điền vào, bởi vì mỗi nỗ lực để chạy dọn dẹp sẽ tạo ra một kết xuất tập tin. Thời gian kích hoạt dọn dẹp phụ thuộc vào tần suất khối lượng công việc. Tuy nhiên, quá trình này không vượt quá 15 phút.

Giải pháp

Bản sửa lỗi cho sự cố này được bao gồm trong bản cập nhật tích lũy sau đây dành cho SQL Server:

Bản cập nhật tích lũy 1 cho SQL Server 2016
      

Giới thiệu về các bản cập nhật tích lũy cho SQL Server

Mỗi bản cập nhật tích lũy mới dành cho SQL Server sẽ chứa tất cả các bản cập nhật nóng và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất dành cho doanh SQL Server:

Bản cập nhật tích lũy mới nhất cho SQL Server 2016
      

Giải pháp thay thế

Để tránh vấn đề này nếu bạn dự định sử dụng Query Store trên các phiên bản khác ngoài Enterprise và Developer, bạn phải tắt chính sách dọn dẹp một cách rõ ràng. Bạn có thể thực hiện điều này từ SQL Server Management Studio (trang Thuộc tính Cơ sở dữ liệu) hoặc bằng cách sử dụng tập lệnh Transact-SQL sau đây:

ALTER DATABASE database_name SET QUERY_STORE (OPERATION_MODE = READ_WRITE, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 0), SIZE_BASED_CLEANUP_MODE = OFF)
Ngoài ra, hãy cân nhắc các tùy chọn dọn dẹp thủ công để ngăn Kho Truy vấn chuyển sang chế độ chỉ đọc. Ví dụ: chạy truy vấn sau đây để định kỳ dọn sạch không gian dữ liệu:

ALTER DATABASE DATABASE_NAME SET QUERY_STORE CLEAR
Ngoài ra, hãy định kỳ chạy các thủ tục được lưu trữ trong Kho Truy vấn sau đây để dọn sạch số liệu thống kê thời gian chạy, truy vấn hoặc kế hoạch cụ thể:

  • sp_query_store_reset_exec_stats
  • sp_query_store_remove_plan
  • sp_query_store_remove_query

      

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".

Tham khảo

Tìm hiểu về thuật ngữ mà Microsoft sử dụng để mô tả các bản cập nhật phần mềm.