다음을 통해 공유


sp_setnetname(Transact-SQL)

적용 대상: SQL Server

네트워크 이름을 sys.servers SQL Server의 원격 인스턴스에 대한 실제 네트워크 컴퓨터 이름으로 설정합니다. 이 프로시저를 사용하여 유효하지 않은 SQL Server 식별자를 포함하는 네트워크 이름이 있는 컴퓨터에 대한 원격 저장 프로시저 호출을 실행할 수 있습니다.

Transact-SQL 구문 표기 규칙

구문

sp_setnetname
    [ @server = ] N'server'
    , [ @netname = ] N'netname'
[ ; ]

인수

[ @server = ] N'server'

사용자가 코딩한 원격 저장 프로시저 호출 구문에서 참조되는 원격 서버의 이름입니다. @server 기본값이 없는 sysname입니다. 이 @server 사용하려면 정확히 한 행 sys.servers 이 이미 있어야 합니다.

[ @netname = ] N'netname'

원격 저장 프로시저 호출이 이루어지는 컴퓨터의 네트워크 이름입니다. @netname sysname이며 기본값은 없습니다.

이 이름은 Windows 컴퓨터 이름과 일치해야 하며 SQL Server 식별자에 허용되지 않는 문자를 포함할 수 있습니다.

반환 코드 값

0(성공) 또는 1(실패).

결과 집합

없음.

설명

컴퓨터 이름에 유효하지 않은 식별자가 포함된 경우 Windows 컴퓨터에 대한 일부 원격 저장 프로시저 호출에 문제가 발생할 수 있습니다.

연결된 서버와 원격 서버는 동일한 네임스페이스에 있으므로 동일한 이름을 가질 수 없습니다. 그러나 다른 이름을 할당하고 그 중 하나의 네트워크 이름을 기본 서버의 네트워크 이름으로 설정하여 지정된 서버에 대해 연결된 서버와 sp_setnetname 원격 서버를 모두 정의할 수 있습니다.

이 예제에서 가정 sqlserv2 은 SQL Server 인스턴스의 실제 이름입니다.

EXEC sp_addlinkedserver 'sqlserv2';
GO
EXEC sp_addserver 'rpcserv2';
GO
EXEC sp_setnetname 'rpcserv2', 'sqlserv2';

참고 항목

연결된 서버를 로컬 서버로 다시 가리키는 데 사용하는 sp_setnetname 것은 지원되지 않습니다. 이러한 방식으로 참조되는 서버는 분산 트랜잭션에 참여할 수 없습니다.

사용 권한

sysadmin 및 setupadmin 고정 서버 역할의 멤버 자격이 필요합니다.

예제

다음 예제에서는 SQL Server에서 원격 저장 프로시저 호출을 발급하는 데 사용되는 일반적인 관리 순서를 보여 있습니다.

USE master;
GO
EXEC sp_addserver 'Win_1';
EXEC sp_setnetname 'Win_1', 'Win-1';
EXEC Win_1.master.dbo.sp_who;