Các số lượng tối đa các kết nối trên các phiên bản SQL Server và các phiên bản là 32,767.
Bạn có thể xác định có bao nhiêu kết nối SQL Server hiện có bằng cách xem:
SELECT ConnectionStatus = CASE WHEN dec.most_recent_sql_handle = 0x0
THEN 'Unused'
ELSE 'Used'
END
, CASE WHEN des.status = 'Sleeping'
THEN 'sleeping'
ELSE 'Not Sleeping'
END
, ConnectionCount = COUNT(1)
FROM sys.dm_exec_connections dec
INNER JOIN sys.dm_exec_sessions des ON dec.session_id = des.session_id
GROUP BY CASE WHEN des.status = 'Sleeping'
THEN 'sleeping'
ELSE 'Not Sleeping'
END
, CASE WHEN dec.most_recent_sql_handle = 0x0
THEN 'Unused'
ELSE 'Used'
END;
Nếu tỷ lệ giữa các kết nối được sử dụng và không sử dụng từ truy vấn trên có liên quan, có khả năng nhóm kết nối được bật bởi các ứng dụng khách được kết nối với máy chủ và các kết nối đó không được sử dụng hiệu quả. Bạn có thể muốn các nhà phát triển sửa đổi chuỗi kết nối cho các ứng dụng này để giới hạn kích thước của nhóm kết nối và đảm bảo chúng được xử lý đúng các kết nối. Nếu các kết nối không được xử lý chính xác, chúng sẽ vẫn mở miễn là ứng dụng khách đang chạy.
Nếu bạn đang cảm thấy đặc biệt là dại, và nhu cầu để có được thoát khỏi tất cả các kết nối đã không được thực hiện bất cứ điều gì gần đây (không phân biệt nếu họ đang thực sự hiện thực hiện công việc), bạn có thể chạy các đoạn mã sau, mà sẽ tạo ra một danh sách các phiên có thể bị giết Bạn cần sao chép và dán các lệnh đã tạo vào cửa sổ SSMS mới để thực sự chạy các lệnh. Tôi cũng khuyên bạn nên cập nhật sơ yếu lý lịch của mình chỉ trong trường hợp .
DECLARE @cmd NVARCHAR(MAX);
SET @cmd = '';
SELECT @cmd = @cmd +
CASE WHEN @cmd = '' THEN '' ELSE CHAR(13) + CHAR(10) END
+ 'KILL ' + CONVERT(VARCHAR(MAX), dec.session_id) + ';'
FROM sys.dm_exec_connections dec
WHERE dec.most_recent_sql_handle = 0x0;
PRINT @cmd;
Có thể chia tỷ lệ tuyến tính số lượng kết nối ngoài 32.767 bằng cách bảo vệ dữ liệu trên nhiều nút SQL Server. Tuy nhiên, theo tôi, sử dụng shending như một cách để vượt qua giới hạn về số lượng kết nối cũng tương tự như sử dụng bom nguyên tử để giết nhện. Nó sẽ giết con nhện, nhưng bạn có thể gặp vấn đề lớn hơn vào cuối ngày. Chưa kể việc chế tạo bom nguyên tử khá khó khăn, chưa kể đến việc thực hiện shending đúng cách.