류짱:Beyond MySelf

MSSQL Failover Cluster의 TempDB를 로컬 디스크로 변경 하는 방법 본문

Microsoft/MS SQL

MSSQL Failover Cluster의 TempDB를 로컬 디스크로 변경 하는 방법

リュちゃん 2017. 11. 1. 09:54

MSSQL Failover Cluster의 TempDB를 로컬 디스크로 변경 하는 방법

서비스중인  SQL Server 2012R2  Failover Cluster의 TempDB를 로컬 디스크로 변경하는 작업을 위한 가이드를 공유해봅니다.
아래 작업을 진행한 배경은 요기(http://ryuchan.kr/525)서 확인 가능합니다.

[사전 작업]
- 각 노드에 SSD 디스크 추가
- 반드시 사전에 양쪽 노드의 동일 한 위치에 Tempdb가 위치할 폴더를 생성 합니다.
 
[ 작업 절차 ]
SSD 추가 작업이 완료 된 후 각 노드의 동일한 위치에 Tempdb폴더가 생성 되었다는 가정하에..

1. 현재 SQL 소유권을 가지고 있는 Node 확인
-> node2


2. SQL 서버의 소유권을 가지고 있는 서버로 로그온 후 sql management 실행  Tempdb 위치 확인

SELECT name, physical_name AS CurrentLocation 
FROM sys.master_files 
WHERE database_id = DB_ID(N'tempdb'); 
GO

현재 Tempdb는 클러스터 공유 디스크(E 드라이브)에 연결 되어 있음을 확인

3. Alter database 명령어를이용해서 Tempdb 위치 변경

USE master; 
GO 
ALTER DATABASE tempdb  
MODIFY FILE (NAME = tempdev, FILENAME = 'c:\sql\temp\tempdb.mdf'); 
GO 
ALTER DATABASE tempdb  
MODIFY FILE (NAME = templog, FILENAME = ' c:\sql\temp \templog.ldf'); 
GO 

위 커멘드를 실행하면 아래 빨간 네모 박스와 같은 경고메시지가 발생합니다.
tempdb가 클러스터 디스크에서 로컬 디스크로 변경 된다는 경고이므로 참고만 합니다.

4. SQL service 재 시작


5. Tempdb 위치 확인


SQL Failover Test
기존 Node 2에서 Node1로 Failover 가 정상적으로 완료 됨을 확인 할 수 있습니다. 물론 Failback도 잘 되었습니다.

[참고 자료]
Local Tempdb with SQL Server 2012R2 Failover Cluster #1
http://ryuchan.kr/525

Local Tempdb with SQL Server 2012R2 Failover Cluster #2
http://ryuchan.kr/526

Move System Databases
https://docs.microsoft.com/en-us/sql/relational-databases/databases/move-system-databases


감사합니다.