데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

SQL Linux에서 데이터  로그 파일의 기본 디렉토리 변경

 

·         Version : ubuntu, SQL Server Linux

 

SQL Server Linux에서 데이터 파일  로그 파일의 기본 디렉토리 위치를 변경하는 방법에 대해서 알아본다. Linux SQL Server 경우 msslq-conf  유틸리티의 스크립트에 의해 수행 된다.

 

아래 스크립트를 실행하여 데이터베이스의 현재 기본 위치의 파일을 표시 한다모든 데이터베이스 파일이 /var/opt/mssql/data  위치하고 있음을   있다.

sudo su

 

ls –lrt /var/opt/mssql/data

 

 

임시로 새로운 데이터베이스를 생성하여 경로를 확인하여도 기본 폴더인 /var/opt/mssql/data  생성된 것을 확인   있다.

 

이제 데이터베이스 파일의 위치를 /var/opt/mssql/data에서  /opt/mssql/data  폴더로 바꾸어 새로운 데이터베이스를 만들때 마다 새로운 경로에 생성되록 한다우선 새로운 경로의 디렉토리를 생성한다.

mkdir /opt/mssql/data

 

/opt//mssql/data 디렉토리 생성이 완료 되었으면  SQL Server   디렉토리에 접근할  있도록 폴더의 소유자와 그룹을 변경한다.

sudo chown mssql /opt/mssql/data

sudo  chgrp /opt/mssql/data

 

이제 mssql-conf  사용하여 기본 데이터베이스 파일의 위치를 설정한다 스크립트는 /opt/mssql/bin 디렉토리에 위치하고 있다아래 명령을 사용하여   해당 경로에  파일이 있는지 확인   있다.

ls –lrt /opt/mssql/bin

 

 

아래 명령을 실행하여 기본 데이터베이스 파일 위치를 /opt/mssql/data  변경한다.

sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /opt/mssql/data

 

 

기본 디렉토리 변경이 완료 되었으면 반드시 서비스를 재시작해야 변경사항이 적용 된다.

systemctl restart mssql-server

 

변경된 내용을 확인하기 위해  sqlcmd  사용하여  SQL Server  연결한다이때 아래와 같은 문제가 발생한다.

 문제는 tempdb  데이터와 로그 파일이 수동으로  위치(/opt/mssql/data) 이동하여 생성되면서 발생한 것으로 아래 명령을 실행하여  파일을 모두 기존 위치로 이동한다.

sudo mv /var/opt/mssql/data/tempdb.mdf /opt/mssql/data

sudo mv /var/opt/mssql/data/templog.ldf /opt/mssql/data

 

Tempdb 데이터  로그 파일을 기존 위치로 이동 sqlcmd  사용하면 성공적으로 연결할  있으며 tempdb 에서 파일 위치를 확인해보면 기존 경로에서 온라인 상태임을 확인   있다.


로그파일 기본 디렉토리 변경방법은 데이터파일 디렉토리 변경과 거의 동일하여 기본 로그 경로를 변경하는 명령문만 약간 다르다모든 과정은 데이터와 동일하게 진행하고 아래 명령문으로 로그 파일의 기본 디렉토리를 변경한다.

sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /opt/mssql/log

 

 

 

[참고자료]

https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-configure-mssql-conf#a-iddatadira-change-the-default-data-or-log-directory-location

https://www.mssqltips.com/sqlservertip/4652/how-to-change-default-data-and-log-file-directory-for-sql-server-running-on-linux/

 

 

2017-07-03 / 강성욱 / http://sqlmvp.kr

 

SQL Linux, Linux SQL, 리눅스에서 data 파일 경로 변경, SQL Linux  log 파일 경로  변경, SQL 2017, default data directory, mssql-conf, linux 명령어



강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp
No. Subject Author Date Views
2110 SQL Server 2016 Large RAM 및 Checkpoint jevida(강성욱) 2018.03.31 2077
2109 SQL Server 2016 JSON 형식을 일반 ROW 형식으로 반환하 jevida(강성욱) 2018.03.31 1657
2108 model Database 손상시 발생하는 영향 및 복구 방법 jevida(강성욱) 2018.03.31 1184
2107 In-Memory OLTP 사용시 메모리 할당량 초과 오류 jevida(강성욱) 2017.09.13 6749
2106 SQL Server 2016 쿼리 실행에 대한 각 스레드(오퍼레이터) 성능 통계 jevida(강성욱) 2017.09.13 7053
2105 Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점 jevida(강성욱) 2017.09.13 5912
2104 SQL Linux에서 Job Agent 설치 jevida(강성욱) 2017.09.13 5952
2103 SQL Linux에서 Windows SQL 백업 파일 복원 jevida(강성욱) 2017.09.13 5920
2102 Linux에서 Network I/O 확인 jevida(강성욱) 2017.09.13 6340
2101 SQL Linux에서traceflag 활성화 jevida(강성욱) 2017.09.13 5633
2100 SQL Linux에서 dump file 위치 변경 jevida(강성욱) 2017.09.13 5403
2099 SQL Linux에서 Port 변경 jevida(강성욱) 2017.09.13 6219
2098 Linux에서 DISK 공간 확인 jevida(강성욱) 2017.09.13 5610
2097 SQL Linux에서collation 변경 jevida(강성욱) 2017.09.13 3534
» SQL Linux에서 데이터 및 로그 파일의 기본 디렉토리 변경 jevida(강성욱) 2017.09.13 3868
2095 SQL Linux 기본Configure 명령 jevida(강성욱) 2017.09.13 3407
2094 SQL Linux에서 기본 백업 디렉토리 변경 jevida(강성욱) 2017.09.13 3838
2093 Linux에서 DISK I/O 사용량 확인 jevida(강성욱) 2017.09.13 3715
2092 Linux에서 CPU 사용량 확인 jevida(강성욱) 2017.09.13 2217
2091 SQL Linux에서 SQL Server 시작, 중지, 활성, 비활성 jevida(강성욱) 2017.09.13 1454





XE Login