SQL Server User Connection
SQL Server에서 User_Connections 할당과 할당된 User_Connections 만료되면 어떻게 될까?
SQL Server 에러 로그에는 어떤 내용이 기록되는지 확인 하자.
준비사항.
1. 테스트를 위하여 간단히 C#을 이용해서 프로그램을 개발.
A. 충분한 커넥션 할당을 위하여 배열 20000개 생성.
B. 성능 모니터를 통한 User Connection 확인.
C. DMV를 이용한 커넥션 확인.
select * from sys.dm_exec_connections go
|
2. 현재의 user_connections 커넥션 설정 확인.
- 최대 32767개 까지 가능
sp_configure 'show advanced options', 1 reconfigure GO |
CASE 1
① sp_configure 'user connections', 0
② 프로그램 접속 커넥션 10.
10 User Connection 할당 완료. |
CASE 2
① sp_configure 'user connections', 0
② 프로그램 접속 커넥션 100.
100 User Connection 할당 완료. |
CASE 3
① sp_configure 'user connections', 90
② 프로그램 접속 커넥션 100.
MAX User Connetions 90 으로 변경. |
sp_configure 'user connections', 90 reconfigure GO
|
89개 커넥션 이후 접속 에러 발생. |
성능 모니터에서 전체 90개 할당 완료 된 것 확인. |
DMV를 통한 user Connections 확인. 90개. |
90개 세션 이후 추가 세션 할당 에러 발생. |
이벤트 로그에 에러 로그 기록 확인 가능 |
CASE 4
① sp_configure 'user connections', 0
② 프로그램 접속 커넥션 1000.
100 User Connections 연결 후 연결 실패 발생. |
총 user connections 101개 확인. (SSMS 1개 + 프로그램 100개) |
CASE 5
① sp_configure 'user connections', 0
② 프로그램 접속 커넥션 100 * 2.(2개의 프로그램 실행)
프로그램 2개를 실행하여 각 100개씩 할당 완료. 한 프로세스에서 100개 초과해서 사용하지 못함. |
Q1 . 한 프로세스당 왜 user_Connetioncs 100개 까지 밖에 못 열까?
데이터베이스 연결 드라이버 옵션을 변경하면 가능 하다.
'SQL Server > SQL Server Tip' 카테고리의 다른 글
저장 프로시저 실행 수, CPU 소모량, IO, Duration (0) | 2015.07.17 |
---|---|
Online restore (0) | 2015.07.17 |
SQL Server 32bit Memory limit on Windows Server 2008R2 64bit (0) | 2015.07.17 |
PAE, 4GT, AWE 정리 (0) | 2015.07.17 |
Max worker threads (0) | 2015.07.17 |