클러스터형 SQL Server의 연결된 서버 고려 사항

클러스터형 SQL Server 에서 SQL Server 2005 에 제공되지 않은 OLE DB 공급자에 대해 연결된 서버를 구성한 경우 해당 OLE DB 공급자가 클러스터의 모든 노드에 설치되어 있는지 확인하십시오. 또한 연결된 서버를 정의하는 모든 속성은 투명한 위치에 있어야 합니다. 즉, 이 속성에는 SQL Server 가 항상 클러스터의 주어진 노드에서 실행됨을 가정하는 정보가 포함되면 안됩니다.

다음 예에서는 SQL Server 를 실행하는 서버에 대해 연결된 서버를 정의하고 SELECT 문에서 네 부분으로 된 이름을 사용하여 원격 테이블 중 하나를 참조합니다.

sp_addlinkedserver @server = N'LinkServer',
    @srvproduct = N' ',
    @provider = N'SQLNCLI', 
    @datasrc = N'ServerNetName', 
    @catalog = N'AdventureWorks'
GO
SELECT *
FROM LinkServer.AdventureWorks.HumanResources.Employee
GO

루프백 연결된 서버

연결된 서버는 이 서버가 정의된 서버의 포인트 백(루프백)에 정의될 수 있습니다. 단일 서버 네트워크에서 분산 쿼리를 사용하는 응용 프로그램을 테스트할 때 루프백 서버를 유용하게 사용할 수 있습니다.

예를 들어 MyServer라는 서버에 다음과 같은 sp_addlinkedserver 저장 프로시저를 실행하면 루프백 연결된 서버가 정의됩니다.

sp_addlinkedserver @server = N'MyLink',
    @srvproduct = N' ',
    @provider = N'SQLNCLI', 
    @datasrc = N'MyServer', 
    @catalog = N'AdventureWorks'
GO

서버 이름으로 MyLink를 사용하는 Transact-SQL 문은 SQLNCLI 공급자를 통해 루프된 후 로컬 서버로 돌아갑니다.

분산 트랜잭션에서는 루프백 연결된 서버를 사용할 수 없습니다. 분산 트랜잭션 내의 루프백 연결된 서버에 분산 쿼리를 실행하려고 하면 오류 3910과 같은 오류가 발생합니다. "[Microsoft][ODBC SQL Server Driver][SQL Server]다른 세션에서 트랜잭션 컨텍스트를 사용 중입니다."

참고 항목

개념

SQL 네이티브 클라이언트 OLE DB 공급자
분산 쿼리

관련 자료

sp_addlinkedserver(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기