Tôi có một vài truy vấn được gọi từ ứng dụng web C # .NET luôn nhanh đối với tôi (Tôi là quản trị viên cục bộ trên SQL Server) nhưng đối với một nhóm người dùng (nhóm miền có quyền yêu cầu), truy vấn rất chậm điểm nó xuất hiện trong ứng dụng.
Điều gì sẽ khiến cùng một truy vấn chạy khác nhau cho những người dùng khác nhau?
Thêm thông tin:
- Truy vấn là SQL nội tuyến trong mã C #, không phải là thủ tục được lưu trữ
- Ứng dụng sử dụng xác thực tên miền và cả người dùng và bản thân tôi đều chạy truy vấn thông qua ứng dụng
- Có vẻ như vấn đề là các kế hoạch khác nhau và một kế hoạch đã được lưu trữ, vì vậy đó là lý do tại sao nó khác nhau đối với những người dùng khác nhau. Một cái gì đó đang ảnh hưởng đến bộ đệm vì bây giờ truy vấn của tôi chậm qua ứng dụng và nhanh trong SQL Server Management Studio.
exact same query
nó), thì đó không phải là thông số đánh hơi (người dùng có kế hoạch xấu cho (các) tham số sai), nhưng người dùng đang nhận các gói khác nhau cho cùng một tham số (S). Có thể là do các cài đặt như quoted_identifier
và arithabort
, mà bạn có thể so sánh sys.dm_exec_sessions
cho người dùng nhanh và người dùng chậm hoặc có thể là do họ có các lược đồ và đối tượng mặc định khác nhau được tham chiếu mà không có tiền tố lược đồ. Thông số đánh hơi vẫn có thể được tham gia (do đó tại sao một trong số họ có kế hoạch xấu).