Database/MS-SQL
[MSSQL]_컴퓨터 이름 변경으로 인한 인스턴스 이름 변경
KanoKim
2020. 5. 9. 21:29
MSSQL 인스턴스 네임 변경
1. MSSQL 인스턴스 이름 변경 하기
sp_dropserver <old_name>;
go
sp_addserver <new_name>, local;
go
-. 확인
select @@SERVERNAME AS 'Server Name';
SQL Server 서비스 다시 시작
2. Windows 로그인 계정 생성
=> 사용자 매핑 부분도 확인
[ dbo 스키마 넣는 방법 ]
USE [DB_NAME]
GO
EXEC sp_changedbowner '[계정 이름]';
3. msdb 복원후 작업 관리자에서 소유자 변경
아래 내용은 에서 퍼옮.
참고 URL : https://sungwookkang.com/386
4. 원격 로그인 삭제
-. 확인
SELECT A.REMOTE_NAME, B.SRVNAME
FROM SYS.REMOTE_LOGINS AS A INNER JOIN SYS.SYSSERVERS AS B ON A.SERVER_ID = B.SRVID
GO
-. 삭제
sp_dropremotelogin old_name;
GO
-. 원격 계정 설정
sp_addremotelogin 'RemoteServer', 'LoginName', 'Remote_Name'
GO
5. 미러링
-. 확인
SELECT DATABASE_ID, DB_NAME(DATABASE_ID)
FROM SYS.DATABASE_MIRRORING
WHERE MIRRORING_GUID IS NOT NULL
GO
-. 미러링 끊기
ALTER DATABASE SET PARTNER OFF
GO
6. 복제 환경 확인하기
=> 복제 환경에서는 이름 바꾸기가 허용되지 않는다. / 복제를 먼저 제거해야함.
-. 확인
SELECT NAME, IS_PUBLISHED, IS_SUBSCRIBED, IS_DISTRIBUTOR
FROM SYS.DATABASES
WHERE IS_PUBLISHED = 1 OR IS_SUBSCRIBED = 1 OR IS_DISTRIBUTOR = 1
GO
7. LinkDB - 안해봄.
-. 확인
sp_LINKEDSERBERS
연결된 서버 구성 - 연결된 서버 구성은 컴퓨터 이름 바꾸기 작업의 영향을 받습니다. sp_addlinkedserver 또는 sp_setnetname을 사용하여 컴퓨터 이름 참조를 업데이트합니다. 자세한 내용은 sp_addlinkedserver(Transact-SQL) 또는 sp_setnetname(Transact-SQL)을 참조하세요.
sp_setnetname
컴퓨터 이름에 잘못된 식별자가 있는 경우 Windows 컴퓨터에 일부 원격 저장 프로시저를 호출하면 문제가 발생할 수 있습니다.
연결된 서버와 원격 서버는 같은 네임스페이스에 있으므로 이름이 같으면 안 됩니다.
그러나 지정 된 서버에 대 한 연결 된 서버와 원격 서버는 서로 다른 이름을 할당 하 고
sp_setnetname 를 사용 하여 이 중 하나의 네트워크 이름을 기본 서버의 네트워크 이름으로 설정 하 여 정의할 수 있습니다.
--Assume sqlserv2 is actual name of SQL Server => sqlserv2가 실제 SQL Server 이름이라고 가정
--database server
EXEC sp_addlinkedserver 'sqlserv2';
GO
EXEC sp_addserver 'rpcserv2'; -> 인스턴스 네임 변경
GO
EXEC sp_setnetname 'rpcserv2', 'sqlserv2';