it-swarm-ko.com

SQL Server 2008 인스턴스의 이름을 바꾸는 방법은 무엇입니까?

다시 설치하지 않고 SQL Server 2008 인스턴스의 이름을 바꾸려면 어떻게해야합니까?

예를 들어, db가 "MySQLServer\MSSQL2008"로 참조되는 경우 어떻게 "MySQLServer\SQL2008"로 이름을 바꿀 수 있습니까?

28
Scott Marlowe

설치하지 않고 이름을 바꿀 수 있다고 생각하지 않습니다.

복제와 같은 일부 내부 데이터베이스에는 이름에 흔적이 남았으며 나중에 오류가 발생할 수 있습니다.

가능하면 인스턴스가 둘 이상없는 경우 모든 데이터베이스를 다시 설치 한 다음 다시 가져 오는 것이 가장 좋습니다.

31
William Hilsum

나는이 스크립트가 인터넷상에서 어디에나 존재한다는 것을 알고 있지만, 구글이 그것을 할 때마다 필요에 따라 과도하게 정교하게 저장된 저장 프로 시저 (procedure proc)를 만들어 낸다. 따라서 다음을 위해 SQL Server 인스턴스의 이름을 바꾸는 데 필요한 명령이있다.

  • 나중에 비교할 수 있도록 SQL Server 인스턴스의 현재 이름을 가져옵니다.
    SELECT @@servername
  • 로컬 SQL Server 인스턴스의 알려진 원격 및 연결된 서버 목록에서 서버를 제거하십시오.
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • SQL Server의 로컬 인스턴스 이름을 정의하십시오.
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • 비교할 SQL Server 인스턴스의 새 이름을 가져옵니다. SELECT @@servername

그리고 사용법과 관련된 몇 가지 참고 사항 :
sp_dropserver :

  1. 이 저장 프로시 저는 원격 서버와 연결된 서버를 모두 제거 할 수 있습니다.
  2. Droplogins 매개 변수를 사용하면 [SERVER NAME]에 대한 관련 원격 및 연결된 서버 로그인도 제거해야합니다.

sp_addserver :

  1. 연결된 서버를 정의하려면 sp_addlinkedserver를 사용하십시오 (이 기능은 SQL Server 2005 이상의 버전에서 더 이상 사용되지 않으므로).
  2. sp_addserver는 사용자 정의 트랜잭션 내에서 사용할 수 없습니다.

또한 SQL Server 이름을 바꿀 때 다음을 권장합니다.
컴퓨터 이름 바꾸기의 일부로이 작업을 수행하는 경우 먼저 컴퓨터 이름을 바꾸고 SQL Server의 이름을 바꾸십시오. SQL Server의 이름을 변경 한 후에는 종속 서비스를 포함하여 SQLServer를 완전히 다시 시작하십시오.

아래 링크 에서이 정보를 얻었습니다.

https://web.archive.org/web/20141116031942/http://modhul.com/2008/01/15/renaming-a-sql-server-instance/

9
arunmanikumar

"별칭"을 추가하고 두 이름으로 모두 사용할 수 있다는 간단한 참고 사항입니다.

enter image description here

1
jitbit

select @@servername는 새 이름을 표시하지만 ERRORLOG의 서버 이름은 이전 이름을 표시하며 새 이름을 사용하여 연결할 수 없습니다.

유일한 해결책은 다시 설치하는 것입니다.

0
Ben