Triệu chứng
Khi bạn cố gắng thực thi nhiều truy vấn lớn cùng một lúc trong Microsoft SQL Server 2014, một số truy vấn có thể chờ RESOURCE_SEMAPHORE_QUERY_COMPILE. Chỉ có một truy vấn yêu cầu thêm bộ nhớ so với ngưỡng cổng lớn (như được cung cấp bởi đầu ra của lệnh DBCC MEMORYSTATUS ) để biên dịch có thể tiếp tục, ngay cả khi máy chủ có đủ bộ nhớ sẵn dùng.Lưu ý Đây là một hành vi dự kiến. Tuy nhiên, trong các hệ thống lô lớn như một nhà kho dữ liệu, điều này có thể hạ cấp hiệu suất trong thực hiện đồng thời của nhiều truy vấn.
Giải pháp
Thông tin Cập Nhật tích lũy
Vấn đề lần đầu tiên được khắc phục trong bản Cập Nhật tích lũy SQL Server sau đây.
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Chúng tôi khuyên bạn nên tải xuống và cài đặt các bản Cập Nhật tích lũy mới nhất cho SQL Server:
Hotfix này giới thiệu cờ theo dõi mới-T 6498. Cờ theo dõi này cho phép nhiều hơn một trình soạn truy vấn lớn được truy nhập vào cổng kết nối lớn khi có đủ bộ nhớ sẵn dùng. Nó dựa trên tỷ lệ phần trăm 80 của bộ nhớ đích SQL Server, và nó cho phép một trình tổng hợp truy vấn lớn trên 25 gigabyte (GB) bộ nhớ. Ví dụ, điều này cho phép hai tính toán truy vấn lớn trên máy tính bộ nhớ 64 GB. Sau khi bạn áp dụng hotfix này, bạn phải bật theo dõi cờ-T 6498 để cho phép hành vi mới. Lưu ý Nếu bạn bật cờ theo dõi bằng cách sử dụng lệnh DBCC TRACEON , bạn không cần phải khởi động lại máy chủ để có hiệu lực theo dõi cờ. Nhưng có thể mất 10 giây cho cấu hình cổng kết nối lớn mới để áp dụng. Một hotfix được hỗ trợ sẵn có từ Microsoft. Tuy nhiên, hotfix này chỉ nhằm khắc phục sự cố được mô tả trong bài viết này. Chỉ áp dụng hotfix này cho các hệ thống đang gặp vấn đề cụ thể này. Nếu các hotfix có sẵn để tải xuống, có phần "tải xuống hotfix có sẵn" ở đầu bài viết cơ sở kiến thức này. Nếu phần này không xuất hiện, hãy gửi một yêu cầu dịch vụ và hỗ trợ khách hàng của Microsoft để có được các hotfix. Ghi chú Nếu bắt buộc phải có vấn đề bổ sung hoặc nếu bất kỳ khắc phục sự cố nào, bạn có thể phải tạo một yêu cầu dịch vụ riêng biệt. Các chi phí hỗ trợ thông thường sẽ áp dụng cho các câu hỏi và vấn đề hỗ trợ bổ sung mà không đủ điều kiện cho các hotfix cụ thể này. Để biết danh sách đầy đủ về dịch vụ khách hàng và số điện thoại hỗ trợ của Microsoft hoặc để tạo một yêu cầu dịch vụ riêng biệt, hãy truy cập trang web Microsoft sau đây:
http://support.microsoft.com/contactus/?ws=support Lưu ý Biểu mẫu "tải xuống hotfix sẵn dùng" sẽ hiển thị các ngôn ngữ mà hotfix sẵn dùng. Nếu bạn không nhìn thấy ngôn ngữ của mình, đó là vì một hotfix không sẵn dùng cho ngôn ngữ đó.
Thông tin Bổ sung
Nguyên nhânSQL Server sử dụng cổng kết nối để biên soạn throttle. Kiến trúc cổng là một cách cho SQL Server để giữ cho việc sử dụng bộ nhớ cho việc tổng các truy vấn đến bên dưới điều khiển. Có ba cổng kết nối: nhỏ, Trung bình và lớn. Để biết thêm thông tin về cách sử dụng lệnh DBCC memorystatus để giám sát việc sử dụng bộ nhớ, hãy xem kB 907877: cách sử dụng lệnh DBCC memorystatus để giám sát việc sử dụng bộ nhớ trên SQL Server 2005.
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".