하기의 내용은 검색한 블로그에서 발췌한 것으로 서비스 도중 데이터베이스 기본 위치를 변경하는 경우엔 기존 데이터도 함께 옮겨줘야만 문제가 발생하지 않는다

따라서 다음과 같이 서비스를 중지후에 기본 위치를 변경하고 DATA 파일을 옮긴후에 서비스를 다시 시작하도록 해야 한다

또한 원하는 데이터베이스 파일만 옮기도록 한다

MSSQL의 모든 DATA파일을 옮기려 하면 시스템에서 사용하는 데이터베이스의 경우 프로세스에 의해 lock이 걸려 위치 이동이 불가능하다

 

> MSSMS(Microsoft SQL Server Management Studio) 실행

> 우선 이동할 데이터베이스를 백업한다

> 하단의 내용대로 데이터베이스 기본 위치 경로 변경

> MSSMS(Microsoft SQL Server Management Studio) 에서 서버를 재시작

> net stop MSSQLSERVER

> DATA 파일을(사용자가 생성한 mdf, ldf 데이터베이스 파일) 변경된 경로로 파일 복사

> 혹시 모르니 기존 경로의 DATA 파일은 확장자에 언더바를 붙여서 파일 백업

> net start MSSQLSERVER

> MSSMS(Microsoft SQL Server Management Studio) 에서 서버를 재시작

> 이동한 데이터베이스에 '복원 보류중' 메세지를 확인

> 데이터베이스를 복원한다 (복원 경로를 이동한 경로로 지정한다)

 


해당 경로는 설치 시 데이터베이스 기본 설정 위치를 설정할 수 있고, 나중에 변경이 가능하다.

 

해당 값은 레지스트리에 등록이 되어 있어서 실제 변경은 레지스트리를 변경하는 작업을 하게 된다.

 

변경하는 방법은 쉽다.

 

 

 

SSMS 에서 개체 탐색기를 열고 해당 인스턴스의 오른쪽 메뉴의 [속성]을 클릭한다.

 

속성에서 [데이터베이스 설정] 을 선택하면 하단의 [데이터베이스 기본 위치] 설정 메뉴가 있다.

 

여기에서 해당 경로를 선택하면 된다.

 

000.png

 

아래와 같이 변경하고 확인을 클릭한다.

 

001.png

 

변경을 하게 되면 아래와 같이 레지스트리가 변경이 된다.

 

002.png

 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQLServer

 

[구문]

USE [master]

GO

EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'DefaultData', REG_SZ, N'C:\MSSQL\Log'

GO

 

 

 

버전별 / 명명된 인스턴스 별에 따라 경로가 틀리다.

 

 

 

즉시 적용?? 되는줄 알았으나 SQL Server 서비스를 재 시작해야 적용이 된다.

 

레지스트리에 변경이 되었으나 재 시작을 안해주면 다시 원복이 된다. (레지스트리 값을 원복이 되지 않음)

 

SQL 서비스를 시작하면 이미 레지스트리의 값들을 로드하여 이미 캐싱을 하고 있다. 그래서 변경이 즉시 되지 않는 것이다.

 

 

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
41 SQL Server 2008 R2 제거 file 황제낙엽 2016.06.15 1750
40 서버 컴퓨터 이름 변경과 함께 SQL Server 이름 변경 하기 file 황제낙엽 2016.07.19 1404
39 SQL Server 트랜잭션 복제(replication-DB 미러링) 구성 방법 황제낙엽 2016.06.14 1076
38 MS SQL Replication 아키텍쳐 file 황제낙엽 2016.05.24 719
37 SQL Server 2012 서버 복제 (게시 & 구독) - 1 file 황제낙엽 2016.06.08 679
36 Downgrade from SQL Server Enterprise Edition to Standard Edition file 황제낙엽 2016.06.23 597
35 SQL Server 2016 설치를 위한 하드웨어 및 소프트웨어 요구 사항 황제낙엽 2016.06.14 583
34 SQL Server 2014 제품별 기능 및 가격 file 황제낙엽 2016.05.24 480
33 SqlServer 백업 / 복제 (DB Copy 방식) 정리 [SQL Server 2008 R2] file 황제낙엽 2016.06.13 417
32 SELECT 후 다른 Table에 UPDATE 하는 방법 (MSSQL) 황제낙엽 2008.01.28 331
31 Windows 방화벽에서 SQL Server 포트 허용하기 황제낙엽 2020.02.13 274
30 SQL Server 2012 서버 복제 (게시 & 구독) - 2 file 황제낙엽 2016.06.14 257
29 sql server 복제(replication)에서는 서버 연결 시 실제 서버 이름이 필요합니다 (트랜잭션 복제 구성 ) file 황제낙엽 2016.06.14 250
28 SQL Server 에디션 다운그레이드와 제한된 기능 확인 file 황제낙엽 2016.06.18 228
27 DB 성능 최적화 14가지 지키기 (쿼리 성능 향상) 황제낙엽 2019.05.29 184
26 MS-SQL Server 2008 SA계정 활성화. (SQL Server 인증 연결) file 황제낙엽 2016.06.14 184
25 Identify database features restricted to a specific edition of SQL Server 2008 file 황제낙엽 2016.06.18 183
24 SQL Server 2012 설치를 위한 하드웨어 및 소프트웨어 요구 사항 황제낙엽 2016.05.24 180
23 SQL Server 2014 향상된 백업 및 복원 file 황제낙엽 2016.06.14 165
22 SQL Server 를 Developer (Enterprise) 에서 Standard 로 교체하기(Downgrade) 황제낙엽 2016.06.23 161