SQL Server Net Libraries

jevida(강성욱) 2016.09.13 06:53 Views : 1156

SQL Server Net Libraries

 

클라이언트에서 데이터베이스 엔진에 연결하려면 서버가 사용 가능한 프로토콜을 수신 중이어야 한다. SQL Server는 클라이언트가 통신하기 위하여 동적 연결 라이브러리(DLL)로 알려진 여러 Net Libraries를 제공한다. 이러한 Net Libraries는 SQL Server와 클라이언트간에 데이터를 교환하는 사용할 프로토콜을 지정한다. Microsoft SQL Server는 동시에 여러 프로토콜에 대한 요청을 서비스 할 수 있다.

 

SQL Server에서는 4가지 프로토콜을 설정 할 수 있다. 프로토콜 설정은 SQL Server 구성관리자에서 할 수 있다.

 

클라이언트에서는 단일 프로토콜을 사용하여 SQL Server에 연결 한다. 클라이언트 프로그램에서 SQL Server가 수신하는 프로토콜을 알지 못하는 경우 여러 프로토콜을 순서대로 시도하도록 클라이언트를 구성한다.

 

SQL Server 구성 관리자 도구를 사용하여 다음 작업을 수행 할 수 있다.

  • SQL Server의 인스턴스가 수신할 서버 프로토콜 활성.
  • 각 데이터베이스 엔진에서 수신할 IP 주소, TCP/IP 포트 및 명명된 파이프를 지정하거나 변경
  • 사용 가능한 모든 서버 프로토콜에 대해 SSL(Secure Sockets Layer)암호화 사용.(인증서 필요)

 

[라이브러리 옵션]

공유 메모리

  • 가장 간단한 프로토콜이며 구성 가능한 설정이 없다. SQL Server와 클라이언트가 같은 물리적인 머신에 있는 경우 실제 네트워크 스택을 거치지 않고 Net Library를 사용한다. 그 이유는 SQL Server와 클라이언트가 통신하기 위하여 Windows 공유메모리 기능을 사용하기 때문이다. 다른 프로토콜이 제대로 작동 하지 않는 경우 문제 해결을 위하여 공유 메모리 프로토콜을 사용하여 접속 할 수 있다.
  • MDAC 2.8 또는 이전 버전을 사용하는 클라이언트에서는 공유 메모리를 프로토콜을 사용 할 수 없으며 이를 사용하려고 시도하면 자동을 명명된 파이프로 전환 된다.

 

 

TCP/IP

  • TCP/IP는 Windows 플랫폼에서 실행되는 클라이언트의 기본 프로토콜이다.
  • 다양한 하드웨어 아키텍처 및 운영 체제가 있는 컴퓨터의 상호 연결된 네트워크를 통해 통신 한다.
  • TCP/IP는 네트워크 트래픽의 라우팅을 위한 표준을 포함하며 고급 보안 기능을 제공 한다.
  • 공유 메모리 설정에서 첫 번째로 선택되어지는 프로토콜이다.

 

명명된 파이프

  • 명명된 파이프는 빠른 연결을 위해 LAN 네트워크에서 사용.
  • 메모리의 일부는 한 프로세스에서 다른 프로세스로 정보를 전달 하는데 사용.(한 곳의 출력은 다른 곳의 입력이 됨)

 

VIA

  • 가상 인터페이스 어댑터를 의미.
  • 하드웨어 VIA와 함께 작동.
  • 향후 릴리즈에서 제거 예정.

 

[TCP/IP VS 명명된 파이프]

TCP/IP

명명된 파이프

  • 명명된 파이프보다 효율적. 오버헤드 적음
  • 성능 강화 메커니즘을 사용. 느린 네트워크에 유용
  • 백로그 큐 지원
  • 일반적으로 느린 LAN, WAN 또는 전화 접속 네트워크에 적절함
  • 다른 피어가 읽기 명령으로 요청하기전 데이터 보내지 않음.
  • 데이터를 읽기전 파이프 메시지 피킹이 수행.
  • 느린 네트워크에서 과도한 트래픽 사용.
  • 로컬 커널 모드로 실행되며 매우 빠름
  • 네트워크 속도가 문제되지 않는 경우 사용

 

[참고 사항]

프로토콜은 작업할 클라이언트 및 서버 양쪽에서 설정 되어있어야 한다. 서버는 사용 가능한 모든 프로토콜에서 동시에 요청을 수신 할 수 있다. 클라이언트 컴퓨터에서는 한 개의 프로토콜을 선택하거나 SQL Server 구성 마법사에 나열된 순서로 프로토콜 사용 시도를 할 수 있다.

SQL Server는 프로토콜 변경 사항을 적용하려면 SQL Service를 다시 시작해야 한다.

장애 조치 클러스터 환경에서는 TCP/IP 및 명명된 파이프만 지원한다.



강성욱 / jevida@naver.com

Microsoft SQL Server MVP

Blog : http://sqlmvp.kr

Facebook : http://facebook.com/sqlmvp

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 28665
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 15551
1694 SQL Server SP_Congifure 변경 사항 캡처 jevida(강성욱) 2016.09.13 2104
» SQL Server Net Libraries jevida(강성욱) 2016.09.13 1156
1692 SQL Server 별칭 설정 및 사용 jevida(강성욱) 2016.09.13 2858
1691 SQL Server에 연결된 어플리케이션 드라이버 버전 확인 jevida(강성욱) 2016.09.13 972
1690 SQL Server 성능 대시보드 jevida(강성욱) 2016.09.13 2365
1689 SSMS를 이용한 데이터베이스 복사 하기 jevida(강성욱) 2016.09.13 11850
1688 SQL Server에서 DB2 링크드 서버 연결 방법 jevida(강성욱) 2016.09.13 3473
1687 SQL Server 인덱스 활성 / 비활성 하기 jevida(강성욱) 2016.09.13 2438
1686 파티션 오프셋과 SQL Server에 대한 디스크 할당 단위 크기 jevida(강성욱) 2016.09.13 1806
1685 Read the End of a Large Error Log (에러로그 끝 부분 읽기) jevida(강성욱) 2016.09.13 1346
1684 데이터베이스 여유공간 확인 jevida(강성욱) 2016.09.13 1495
1683 FILE GROUP 간 데이터 이동 jevida(강성욱) 2016.09.13 1642
1682 문서화 되지 않은 sys.fn_PhysLocFormatter 함수 jevida(강성욱) 2016.09.13 1015
1681 SQL Server 관리자 전용 연결(DAC) jevida(강성욱) 2016.09.13 3584
1680 파일 접근 권한으로 인한 DB복원 실패 작업 해결하기 jevida(강성욱) 2016.09.13 2067
1679 DBCC CHECKDB 실행과 히스토리 관리 jevida(강성욱) 2016.09.13 1902
1678 MDF를 이용한 데이터베이스 복원 jevida(강성욱) 2016.09.13 1204
1677 EventID 3041 Error jevida(강성욱) 2016.09.13 1556
1676 데이터베이스 미러 백업 jevida(강성욱) 2016.09.13 1363
1675 SNAPSHOT을 이용한 SQL Server 복원 jevida(강성욱) 2016.09.13 2641





XE Login