mssql-conf 도구를 사용하여 SQL Server on Linux 구성
적용 대상: SQL Server - Linux
mssql-conf는 Red Hat Enterprise Linux, SUSE Linux Enterprise Server 및 Ubuntu용 SQL Server 2017(14.x)과 함께 설치되는 구성 스크립트입니다. 구성 값이 저장되는 mssql.conf 파일을 수정합니다. mssql-conf 유틸리티를 사용하여 다음 매개 변수를 설정할 수 있습니다.
매개 변수 | 설명 |
---|---|
에이전트 | SQL Server 에이전트를 사용하도록 설정합니다. |
Windows로 인증 | Windows Server Active Directory 인증에 대한 설정입니다. |
데이터 정렬 | SQL Server on Linux에 대한 새 데이터 정렬을 설정합니다. |
고객 의견 | SQL Server에서 사용자 의견을 Microsoft에 보낼지 여부를 선택합니다. |
데이터베이스 메일 프로필 | SQL Server on Linux의 기본 데이터베이스 메일 프로필을 설정합니다. |
기본 데이터 디렉터리 | 새 SQL Server 데이터베이스 데이터 파일(.mdf)의 기본 디렉터리를 변경합니다. |
기본 로그 디렉터리 | 새 SQL Server 데이터베이스 로그(.ldf) 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 디렉터리 | master 데이터베이스 및 로그 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 파일 이름 | master 데이터베이스 파일의 이름을 변경합니다. |
기본 덤프 디렉터리 | 새 메모리 덤프 및 기타 문제 해결 파일의 기본 디렉터리를 변경합니다. |
기본 오류 로그 디렉터리 | 새 SQL Server 오류 로그, 기본 프로파일러 추적, 시스템 상태 세션 XE 및 Hekaton 세션 XE 파일의 기본 디렉터리를 변경합니다. |
기본 백업 디렉터리 | 새 백업 파일의 기본 디렉터리를 변경합니다. |
덤프 형식 | 수집할 덤프 메모리 덤프 파일의 형식을 선택합니다. |
버전(Edition) | SQL Server 버전을 설정합니다. |
고가용성 | 가용성 그룹을 사용하도록 설정합니다. |
로컬 감사 디렉터리 | 로컬 감사 파일을 추가할 디렉터리를 설정합니다. |
로캘 | 사용할 SQL Server의 로캘을 설정합니다. |
메모리 제한 | SQL Server의 메모리 제한을 설정합니다. |
네트워크 설정 | SQL Server에 대한 추가 네트워크 설정입니다. |
Microsoft Distributed Transaction Coordinator | Linux에서 MSDTC를 구성하고 문제를 해결합니다. |
TCP 포트 | SQL Server가 연결을 수신 대기하는 포트를 변경합니다. |
TLS | 전송 수준 보안을 구성합니다. |
추적 플래그 | 서비스에서 사용할 추적 플래그를 설정합니다. |
mssql-conf는 Red Hat Enterprise Linux, SUSE Linux Enterprise Server 및 Ubuntu용 SQL Server 2019 (15.x)와 함께 설치되는 구성 스크립트입니다. 이 유틸리티를 사용하여 다음 매개 변수를 설정할 수 있습니다.
매개 변수 | 설명 |
---|---|
에이전트 | SQL Server 에이전트 사용 |
Windows로 인증 | Windows Server Active Directory 인증에 대한 설정입니다. |
데이터 정렬 | SQL Server on Linux에 대한 새 데이터 정렬을 설정합니다. |
고객 의견 | SQL Server에서 사용자 의견을 Microsoft에 보낼지 여부를 선택합니다. |
데이터베이스 메일 프로필 | SQL Server on Linux의 기본 데이터베이스 메일 프로필을 설정합니다. |
기본 데이터 디렉터리 | 새 SQL Server 데이터베이스 데이터 파일(.mdf)의 기본 디렉터리를 변경합니다. |
기본 로그 디렉터리 | 새 SQL Server 데이터베이스 로그(.ldf) 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 파일 디렉터리 | 기존 SQL 설치에서 master 데이터베이스 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 파일 이름 | master 데이터베이스 파일의 이름을 변경합니다. |
기본 덤프 디렉터리 | 새 메모리 덤프 및 기타 문제 해결 파일의 기본 디렉터리를 변경합니다. |
기본 오류 로그 디렉터리 | 새 SQL Server 오류 로그, 기본 프로파일러 추적, 시스템 상태 세션 XE 및 Hekaton 세션 XE 파일의 기본 디렉터리를 변경합니다. |
기본 백업 디렉터리 | 새 백업 파일의 기본 디렉터리를 변경합니다. |
덤프 형식 | 수집할 덤프 메모리 덤프 파일의 형식을 선택합니다. |
버전(Edition) | SQL Server 버전을 설정합니다. |
고가용성 | 가용성 그룹을 사용하도록 설정합니다. |
로컬 감사 디렉터리 | 로컬 감사 파일을 추가할 디렉터리를 설정합니다. |
로캘 | 사용할 SQL Server의 로캘을 설정합니다. |
메모리 제한 | SQL Server의 메모리 제한을 설정합니다. |
Microsoft Distributed Transaction Coordinator | Linux에서 MSDTC를 구성하고 문제를 해결합니다. |
Machine Learning Services EULA | mlservices 패키지에 대한 R 및 Python EULA에 동의합니다. SQL Server 2019(15.x)에만 적용됩니다. |
네트워크 설정 | SQL Server에 대한 추가 네트워크 설정입니다. |
outboundnetworkaccess | Machine Learning Services R, Python 및 Java 확장의 아웃바운드 네트워크 액세스를 사용하도록 설정합니다. |
TCP 포트 | SQL Server가 연결을 수신 대기하는 포트를 변경합니다. |
TLS | 전송 수준 보안을 구성합니다. |
추적 플래그 | 서비스에서 사용할 추적 플래그를 설정합니다. |
mssql-conf는 Red Hat Enterprise Linux 및 Ubuntu용 SQL Server 2022(16.x)와 함께 설치되는 구성 스크립트입니다. 이 유틸리티를 사용하여 다음 매개 변수를 설정할 수 있습니다.
매개 변수 | 설명 |
---|---|
에이전트 | SQL Server 에이전트 사용 |
Microsoft Entra ID로 인증 | Microsoft Entra ID(이전의 Azure Active Directory)를 사용한 인증 설정입니다. |
Windows로 인증 | Windows Server Active Directory 인증에 대한 설정입니다. |
데이터 정렬 | SQL Server on Linux에 대한 새 데이터 정렬을 설정합니다. |
고객 의견 | SQL Server에서 사용자 의견을 Microsoft에 보낼지 여부를 선택합니다. |
데이터베이스 메일 프로필 | SQL Server on Linux의 기본 데이터베이스 메일 프로필을 설정합니다. |
기본 데이터 디렉터리 | 새 SQL Server 데이터베이스 데이터 파일(.mdf)의 기본 디렉터리를 변경합니다. |
기본 로그 디렉터리 | 새 SQL Server 데이터베이스 로그(.ldf) 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 파일 디렉터리 | 기존 SQL 설치에서 master 데이터베이스 파일의 기본 디렉터리를 변경합니다. |
기본 master 데이터베이스 파일 이름 | master 데이터베이스 파일의 이름을 변경합니다. |
기본 덤프 디렉터리 | 새 메모리 덤프 및 기타 문제 해결 파일의 기본 디렉터리를 변경합니다. |
기본 오류 로그 디렉터리 | 새 SQL Server 오류 로그, 기본 프로파일러 추적, 시스템 상태 세션 XE 및 Hekaton 세션 XE 파일의 기본 디렉터리를 변경합니다. |
기본 백업 디렉터리 | 새 백업 파일의 기본 디렉터리를 변경합니다. |
덤프 형식 | 수집할 덤프 메모리 덤프 파일의 형식을 선택합니다. |
버전(Edition) | SQL Server 버전을 설정합니다. |
고가용성 | 가용성 그룹을 사용하도록 설정합니다. |
로컬 감사 디렉터리 | 로컬 감사 파일을 추가할 디렉터리를 설정합니다. |
로캘 | 사용할 SQL Server의 로캘을 설정합니다. |
메모리 제한 | SQL Server의 메모리 제한을 설정합니다. |
Microsoft Distributed Transaction Coordinator | Linux에서 MSDTC를 구성하고 문제를 해결합니다. |
Machine Learning Services EULA | mlservices 패키지에 대한 R 및 Python EULA에 동의합니다. SQL Server 2019(15.x)에만 적용됩니다. |
네트워크 설정 | SQL Server에 대한 추가 네트워크 설정입니다. |
아웃바운드 네트워크 액세스 | Machine Learning Services R, Python 및 Java 확장의 아웃바운드 네트워크 액세스를 사용하도록 설정합니다. |
SQL Server 커넥터 | SQL Server 커넥터에 대한 로깅 수준을 구성합니다. |
TCP 포트 | SQL Server가 연결을 수신 대기하는 포트를 변경합니다. |
TLS | 전송 수준 보안을 구성합니다. |
추적 플래그 | 서비스에서 사용할 추적 플래그를 설정합니다. |
팁
이 설정 중 일부는 환경 변수를 사용하여 구성할 수도 있습니다. 자세한 내용은 Linux에서 환경 변수를 사용하여 SQL Server 설정 구성을 참조하세요.
사용 팁
Always On 가용성 그룹 및 공유 디스크 클러스터의 경우 항상 각 노드에서 동일하게 구성을 변경합니다.
공유 디스크 클러스터 시나리오의 경우 변경 내용을 적용하려면
mssql-server
서비스를 다시 시작하지 마세요. SQL Server가 애플리케이션으로 실행되고 있습니다. 대신, 리소스를 오프라인으로 전환한 후 다시 온라인으로 전환합니다.이 예제에서는 전체 경로:
/opt/mssql/bin/mssql-conf
를 지정하여 mssql-conf를 실행합니다. 해당 경로로 이동하려면 현재 디렉터리 의 컨텍스트에서 mssql-conf./mssql-conf
를 실행합니다.컨테이너 내의
mssql.conf
파일을 수정하려면 원하는 설정으로 실행 중인 컨테이너가 있는 호스트에mssql.conf
파일을 만든 다음, 컨테이너를 다시 배포합니다. 예를 들어mssql.conf
파일에 다음을 추가하면 SQL Server 에이전트가 활성화됩니다.[sqlagent] enabled = true
다음 명령을 사용하여 컨테이너를 배포할 수 있습니다.
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" \ -p 5433:1433 --name sql1 \ -v /container/sql1:/var/opt/mssql \ -d mcr.microsoft.com/mssql/server:2019-latest
주의
암호는 SQL Server 기본 암호 정책을 따라야 합니다. 기본적으로 암호는 8자 이상이어야 하며 대문자, 소문자, 0~9까지의 숫자 및 기호 네 가지 집합 중 세 집합의 문자를 포함해야 합니다. 암호 길이는 128자까지 가능하며 되도록 길고 복잡한 암호를 사용합니다.
자세한 내용은 SQL Server 컨테이너에서 사용할 구성 파일 만들기를 참조하세요.
SQL Server 에이전트 사용
sqlagent.enabled
설정은 SQL Server 에이전트를 사용하도록 설정합니다. 기본적으로 SQL Server 에이전트는 사용하지 않도록 설정됩니다. 설정 파일에 없는 mssql.conf
경우 sqlagent.enabled
SQL Server는 내부적으로 SQL Server 에이전트 사용하지 않도록 설정된다고 가정합니다.
이 설정을 변경하려면 다음 단계를 사용합니다.
SQL Server 에이전트를 사용하도록 설정합니다.
sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
SQL Server on Linux의 기본 데이터베이스 메일 프로필 설정
sqlagent.databasemailprofile
을 사용하여 메일 경고의 기본 DB 메일 프로필을 설정할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set sqlagent.databasemailprofile <profile_name>
SQL 에이전트 오류 로그
sqlagent.errorlogfile
및 sqlagent.errorlogginglevel
설정을 사용하면 각각 SQL 에이전트 로그 파일 경로 및 로깅 수준을 설정할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set sqlagent.errorlogfile <path>
SQL 에이전트 로깅 수준은 다음과 같은 비트 마스크 값입니다.
1
= 오류2
= 경고4
= 정보
모든 수준을 캡처하려면 값으로 7
을 사용합니다.
sudo /opt/mssql/bin/mssql-conf set sqlagent.errorlogginglevel <level>
Microsoft Entra 인증 구성
SQL Server 2022(16.x)부터 SQL Server에 대한 Microsoft Entra ID를 구성할 수 있습니다. Microsoft Entra ID를 구성하려면 SQL Server를 설치한 후 SQL Server Azure 확장을 설치해야 합니다. Microsoft Entra ID를 구성하는 방법에 대한 자세한 내용은 자습서: SQL Server Microsoft Entra 인증 설정을 참조하세요.
기본 Microsoft Entra ID 인증서 경로 변경
기본적으로 Microsoft Entra 인증서 파일은 /var/opt/mssql/aadsecrets/
에 저장됩니다. 인증서 저장소 또는 암호화된 드라이브를 사용하는 경우 이 경로를 변경할 수 있습니다. 경로를 변경하기 위해 다음 명령을 사용할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set network.aadcertificatefilepath /path/to/new/location.pfx
이전 예제에서 /path/to/new/location.pfx
는 인증서 이름을 포함하여 선호하는 경로입니다.
Microsoft Entra 인증을 위해 SQL Server용 Azure 확장에서 다운로드한 인증서가 해당 위치에 저장됩니다. /var/opt/mssql/secrets
로 변경할 수 없습니다.
참고 항목
기본 Microsoft Entra ID 인증서 경로는 SQL Server 설치한 후 언제든지 변경할 수 있지만 Microsoft Entra ID를 사용하도록 설정하기 전에 변경해야 합니다.
Microsoft Entra ID 구성 옵션
다음 옵션은 Linux에서 실행되는 SQL Server 인스턴스에 대한 Microsoft Entra 인증에 사용됩니다.
Warning
Microsoft Entra ID 매개 변수는 SQL Server용 Azure 확장에 의해 구성되며 수동으로 다시 구성해서는 안 됩니다. 정보 제공을 위해 여기에 나열됩니다.
옵션 | 설명 |
---|---|
network.aadauthenticationendpoint |
Microsoft Entra 인증의 엔드포인트 |
network.aadcertificatefilepath |
Microsoft Entra ID 인증을 위한 인증서 파일 경로 |
network.aadclientcertblacklist |
Microsoft Entra ID 클라이언트 인증서 차단 목록 |
network.aadclientid |
Microsoft Entra 클라이언트 GUID |
network.aadfederationmetadataendpoint |
Microsoft Entra 페더레이션 메타데이터의 엔드포인트 |
network.aadgraphapiendpoint |
Azure AD Graph API 엔드포인트 |
network.aadgraphendpoint |
Azure AD Graph 엔드포인트 |
network.aadissuerurl |
Microsoft Entra 발급자 URL |
network.aadmsgraphendpoint |
Microsoft Entra MS Graph 엔드포인트 |
network.aadonbehalfofauthority |
Microsoft Entra ID 권한 대신 |
network.aadprimarytenant |
Microsoft Entra 기본 테넌트 GUID |
network.aadsendx5c |
Microsoft Entra ID Send X5C |
network.aadserveradminname |
sysadmin이 될 Microsoft Entra 계정의 이름 |
network.aadserveradminsid |
sysadmin이 될 Microsoft Entra 계정의 SID |
network.aadserveradmintype |
sysadmin이 될 Microsoft Entra 계정의 유형 |
network.aadserviceprincipalname |
Microsoft Entra 서비스 사용자 이름 |
network.aadserviceprincipalnamenoslash |
Microsoft Entra 서비스 사용자 이름(슬래시 없음) |
network.aadstsurl |
Microsoft Entra STS URL |
Windows Active Directory 인증 구성
setup-ad-keytab
옵션은 keytab을 만드는 데 사용할 수 있지만 이 옵션을 사용하려면 미리 사용자와 SPN(서비스 사용자 이름)을 만들어야 합니다. Active Directory 유틸리티, adutil을 사용하여 사용자, SPN 및 keytab을 만들 수 있습니다.
setup-ad-keytab
을 사용하는 옵션의 경우 다음 명령을 실행합니다.
sudo /opt/mssql/bin/mssql-conf setup-ad-keytab --help
validate-ad-config
옵션은 Active Directory 인증에 대한 구성의 유효성을 검사합니다.
SQL Server 데이터 정렬 변경
set-collation
옵션은 데이터 정렬 값을 지원되는 데이터 정렬로 변경합니다. 이 변경을 수행하려면 SQL Server 서비스를 중지해야 합니다.
먼저 서버에서 모든 사용자 데이터베이스를 백업합니다.
그런 다음, sp_detach_db 저장 프로시저를 사용하여 사용자 데이터베이스를 분리합니다.
set-collation
옵션을 실행하고 다음 프롬프트를 따릅니다.sudo /opt/mssql/bin/mssql-conf set-collation
mssql-conf 유틸리티는 지정된 데이터 정렬 값으로 변경하고 서비스를 다시 시작하려고 시도합니다. 오류가 있는 경우 데이터 정렬을 이전 값으로 롤백합니다.
사용자 데이터베이스 백업을 복원합니다.
지원되는 데이터 정렬 목록을 보려면 sys.fn_helpcollations 함수를 다음과 같이 실행합니다. SELECT Name from sys.fn_helpcollations()
.
고객 의견 구성
telemetry.customerfeedback
설정은 SQL Server에서 사용자 의견을 Microsoft에 보낼지 여부를 변경합니다. 기본적으로 이 값은 모든 버전에 대해 true
로 설정됩니다. 값을 변경하려면 다음 명령을 실행합니다.
중요
SQL Server, Express 및 Developer의 체험 버전에 대한 고객 의견은 끌 수 없습니다.
telemetry.customerfeedback
에 대해set
명령을 사용하여 mssql-conf 스크립트를 루트 권한으로 실행합니다. 다음 예제에서는false
를 지정하여 고객 의견을 끕니다.sudo /opt/mssql/bin/mssql-conf set telemetry.customerfeedback false
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
자세한 내용은 SQL Server on Linux 및 SQL Server 개인 정보 취급 방침 보완에 대한 사용량 및 진단 데이터 수집 구성을 참조하세요.
기본 데이터 또는 로그 디렉터리 위치 변경
filelocation.defaultdatadir
및 filelocation.defaultlogdir
설정은 새 데이터베이스 및 로그 파일이 생성되는 위치를 변경합니다. 기본적으로 이 위치는 /var/opt/mssql/data
입니다. 이 설정을 변경하려면 다음 단계를 사용합니다.
새 데이터베이스 데이터 및 로그 파일의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/data
디렉터리를 만듭니다.sudo mkdir /tmp/data
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/data sudo chgrp mssql /tmp/data
mssql-conf를 사용하여
set
명령으로 기본 데이터 디렉터리를 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /tmp/data
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
이제 만들어진 새 데이터베이스의 모든 데이터베이스 파일이 새 위치에 저장됩니다. 새 데이터베이스의 로그(.ldf) 파일 위치를 변경하려는 경우 다음
set
명령을 사용할 수 있습니다.sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/log
또한 이 명령은 /tmp/log 디렉터리가 존재하고 사용자 및 그룹
mssql
이 사용하고 있다고 간주합니다.
기본 master
데이터베이스 파일 디렉터리 위치 변경
filelocation.masterdatafile
및 filelocation.masterlogfile
설정은 SQL Server 데이터베이스 엔진이 master
데이터베이스 파일을 검색하는 위치를 변경합니다. 기본적으로 이 위치는 /var/opt/mssql/data
입니다.
이 설정을 변경하려면 다음 단계를 사용합니다.
새 오류 로그 파일의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/masterdatabasedir
디렉터리를 만듭니다.sudo mkdir /tmp/masterdatabasedir
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/masterdatabasedir sudo chgrp mssql /tmp/masterdatabasedir
mssql-conf를 사용하여
set
명령으로 마스터 데이터 및 로그 파일의 기본master
데이터베이스 디렉터리를 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /tmp/masterdatabasedir/master.mdf sudo /opt/mssql/bin/mssql-conf set filelocation.masterlogfile /tmp/masterdatabasedir/mastlog.ldf
참고
마스터 데이터와 로그 파일을 이동할 뿐 아니라 다른 모든 시스템 데이터베이스의 기본 위치도 이동합니다.
SQL Server 서비스를 중지합니다.
sudo systemctl stop mssql-server
master.mdf
및mastlog.ldf
파일을 이동합니다.sudo mv /var/opt/mssql/data/master.mdf /tmp/masterdatabasedir/master.mdf sudo mv /var/opt/mssql/data/mastlog.ldf /tmp/masterdatabasedir/mastlog.ldf
SQL Server 서비스를 시작합니다.
sudo systemctl start mssql-server
참고 항목
SQL Server가 지정된 디렉터리에서
master.mdf
및mastlog.ldf
파일을 찾을 수 없으면 시스템 데이터베이스의 템플릿 기반 복사본이 지정된 디렉터리에 자동으로 생성되고 SQL Server가 시작됩니다. 그러나 사용자 데이터베이스, 서버 로그인, 서버 인증서, 암호화 키, SQL 에이전트 작업 또는 이전sa
암호와 같은 메타데이터는 새master
데이터베이스에서 업데이트되지 않습니다. SQL Server를 중지하고, 이전master.mdf
및mastlog.ldf
를 지정된 새 위치로 이동하고, SQL Server를 시작하여 기존 메타데이터를 계속 사용해야 합니다.
master
데이터베이스 파일 이름 변경
filelocation.masterdatafile
및 filelocation.masterlogfile
설정은 SQL Server 데이터베이스 엔진이 master
데이터베이스 파일을 검색하는 위치를 변경합니다. 또한 master
데이터베이스 및 로그 파일의 이름을 변경하는 데 이 설정을 사용할 수 있습니다.
이 설정을 변경하려면 다음 단계를 사용합니다.
SQL Server 서비스를 중지합니다.
sudo systemctl stop mssql-server
mssql-conf를 사용하여
set
명령으로master
데이터 및 로그 파일의 예상master
데이터베이스 이름을 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /var/opt/mssql/data/masternew.mdf sudo /opt/mssql/bin/mssql-conf set filelocation.mastlogfile /var/opt/mssql/data/mastlognew.ldf
중요
SQL Server가 시작된 후
master
데이터베이스 및 로그 파일의 이름만 변경할 수 있습니다. 처음 실행하기 전에 SQL Server는 파일 이름이master.mdf
및mastlog.ldf
일 것으로 예상합니다.master
데이터베이스 및 로그 파일의 이름을 변경합니다.sudo mv /var/opt/mssql/data/master.mdf /var/opt/mssql/data/masternew.mdf sudo mv /var/opt/mssql/data/mastlog.ldf /var/opt/mssql/data/mastlognew.ldf
SQL Server 서비스를 시작합니다.
sudo systemctl start mssql-server
기본 덤프 디렉터리 위치 변경
filelocation.defaultdumpdir
설정은 크래시가 발생할 때마다 메모리 및 SQL 덤프가 생성되는 기본 위치를 변경합니다. 기본적으로 이러한 파일은 /var/opt/mssql/log
에서 생성됩니다.
이 새 위치를 설정하려면 다음 명령을 사용합니다.
새 덤프 파일의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/dump
디렉터리를 만듭니다.sudo mkdir /tmp/dump
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/dump sudo chgrp mssql /tmp/dump
mssql-conf를 사용하여
set
명령으로 기본 데이터 디렉터리를 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdumpdir /tmp/dump
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
기본 오류 로그 파일 디렉터리 위치 변경
filelocation.errorlogfile
설정은 새 오류 로그, 기본 프로파일러 추적, 시스템 상태 세션 XE 및 Hekaton 세션 XE 파일이 생성되는 위치를 변경합니다. 기본적으로 이 위치는 /var/opt/mssql/log
입니다. SQL Server 오류 로그 파일이 설정된 디렉터리는 다른 로그의 기본 로그 디렉터리가 됩니다.
이 설정을 변경하려면:
새 오류 로그 파일의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/logs
디렉터리를 만듭니다.sudo mkdir /tmp/logs
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/logs sudo chgrp mssql /tmp/logs
mssql-conf를 사용하여
set
명령으로 기본 오류 로그 파일 이름을 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.errorlogfile /tmp/logs/errorlog
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
errorlog.numerrorlogs
설정을 사용하면 로그를 순환하기 전에 유지 관리되는 오류 로그 수를 지정할 수 있습니다.
기본 백업 디렉터리 위치 변경
filelocation.defaultbackupdir
설정은 백업 파일이 생성되는 기본 위치를 변경합니다. 기본적으로 이러한 파일은 /var/opt/mssql/data
에서 생성됩니다.
이 새 위치를 설정하려면 다음 명령을 사용합니다.
새 백업 파일의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/backup
디렉터리를 만듭니다.sudo mkdir /tmp/backup
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/backup sudo chgrp mssql /tmp/backup
mssql-conf를 사용하여
set
명령으로 기본 백업 디렉터리를 변경합니다.sudo /opt/mssql/bin/mssql-conf set filelocation.defaultbackupdir /tmp/backup
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
코어 덤프 설정 지정
SQL Server 프로세스 중 하나에서 예외 또는 크래시가 발생하면 SQL Server는 메모리 덤프를 만듭니다. 메모리 덤프를 캡처하는 데 시간이 오래 걸리고 상당한 공간을 차지할 수 있습니다. 리소스를 절약하고 반복되는 메모리 덤프를 방지하기 위해 자동 덤프 캡처인 coredump.disablecoredump
옵션을 사용하지 않도록 설정할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set coredump.disablecoredump <true or false>
자동 코어 덤프를 사용하지 않도록 설정(coredump.disablecoredump
를 true
로 설정)해도 사용자는 수동으로 메모리 덤프를 생성할 수 있습니다.
SQL Server가 수집하는 메모리 덤프 유형을 제어하는 두 가지 옵션인 coredump.coredumptype
및 coredump.captureminiandfull
이 있습니다. 이 옵션은 코어 덤프 캡처의 두 단계와 관련이 있습니다.
첫 번째 단계 캡처는 예외 발생 시 생성된 덤프 파일의 형식을 결정하는 coredump.coredumptype
설정을 통해 제어됩니다. coredump.captureminiandfull
설정을 사용하여 두 번째 단계를 사용하도록 설정합니다. coredump.captureminiandfull
가 true로 설정하면 coredump.coredumptype
을 통해 지정된 덤프 파일이 생성되고 두 번째 미니 덤프도 생성됩니다. coredump.captureminiandfull
을 false로 설정하면 두 번째 캡처 시도가 사용하지 않도록 설정됩니다.
coredump.captureminiandfull
설정을 사용하여 미니 및 전체 덤프를 둘 다 캡처할지 여부를 결정합니다.sudo /opt/mssql/bin/mssql-conf set coredump.captureminiandfull <true or false>
기본값:
false
coredump.coredumptype
설정을 사용하여 덤프 파일 형식을 지정합니다.sudo /opt/mssql/bin/mssql-conf set coredump.coredumptype <dump_type>
기본값:
miniplus
다음 테이블에서는 가능한
coredump.coredumptype
값을 나열합니다.형식 설명 mini
Mini는 가장 작은 덤프 파일 형식입니다. Linux 시스템 정보를 사용하여 프로세스의 스레드 및 모듈을 결정합니다. 덤프에는 호스트 환경 스레드 스택 및 모듈만 포함됩니다. 간접 메모리 참조 또는 전역은 포함되지 않습니다. miniplus
MiniPlus는 mini와 비슷하지만 추가 메모리를 포함합니다. 다음 메모리 영역을 덤프에 추가하여 SQLPAL 및 호스트 환경의 내부를 이해합니다.
- 다양한 전역
- 64TB를 초과하는 모든 메모리
-/proc/$pid/maps
에 있는 모든 명명된 영역
- 스레드 및 스택의 간접 메모리
- 연결된 TEB(스레드 환경 블록) 및 PEB(프로세스 환경 블록)를 포함한 스레드 정보
- 모듈 정보
- VMM 및 VAD 트리filtered
Filtered는 별도로 제외하는 경우가 아니면 프로세스의 모든 메모리가 포함되는 빼기 기반 디자인을 사용합니다. 이 디자인은 덤프에서 특정 영역을 제외하고 SQLPAL 및 호스트 환경의 내부를 이해합니다. full
Full은 /proc/$pid/maps
에 있는 모든 영역을 포함하는 전체 프로세스 덤프입니다.coredump.captureminiandfull
설정을 통해 제어되지 않습니다.
버전
set-edition
옵션을 사용하여 SQL Server 버전을 변경할 수 있습니다. SQL Server 버전을 변경하려면 먼저 SQL Server 서비스를 중지해야 합니다. 사용 가능한 SQL Server on Linux 버전에 대한 자세한 내용은 SQL Server 버전을 참조하세요.
고가용성
hadr.hadrenabled
옵션은 SQL Server 인스턴스에서 가용성 그룹을 사용하도록 설정합니다. 다음 명령은 hadr.hadrenabled
를 1로 설정하여 가용성 그룹을 사용하도록 설정합니다. 설정을 적용하려면 SQL Server를 다시 시작해야 합니다.
sudo /opt/mssql/bin/mssql-conf set hadr.hadrenabled 1
sudo systemctl restart mssql-server
가용성 그룹에서 이 설정을 사용하는 방법에 대한 자세한 내용은 다음 두 항목을 참조하세요.
로컬 감사 디렉터리 설정
telemetry.userrequestedlocalauditdirectory
설정은 로컬 감사를 사용하도록 설정하며 이를 통해 로컬 감사 로그가 생성되는 디렉터리를 설정할 수 있습니다.
새 로컬 감사 로그의 대상 디렉터리를 만듭니다. 다음 예제에서는 새
/tmp/audit
디렉터리를 만듭니다.sudo mkdir /tmp/audit
디렉터리의 소유자 및 그룹을
mssql
사용자로 변경합니다.sudo chown mssql /tmp/audit sudo chgrp mssql /tmp/audit
telemetry.userrequestedlocalauditdirectory
에 대해set
명령을 사용하여 mssql-conf 스크립트를 루트 권한으로 실행합니다.sudo /opt/mssql/bin/mssql-conf set telemetry.userrequestedlocalauditdirectory /tmp/audit
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
자세한 내용은 SQL Server on Linux에 대한 사용량 및 진단 데이터 수집 구성을 참조하세요.
SQL Server 로캘 변경
language.lcid
설정은 SQL Server 로캘을 지원되는 언어 식별자(LCID)로 변경합니다.
다음 예제에서는 로캘을 프랑스어(1036)로 변경합니다.
sudo /opt/mssql/bin/mssql-conf set language.lcid 1036
변경 내용을 적용하려면 SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
메모리 제한 설정
memory.memorylimitmb
설정은 SQL Server에 사용 가능한 실제 메모리의 양(MB)을 제어합니다. OOM(메모리 부족) 조건을 방지하기 위해 기본값은 실제 메모리의 80%입니다.
중요
memory.memorylimitmb
설정은 SQL Server 프로세스에서 사용할 수 있는 실제 메모리의 양을 제한합니다. 최대 서버 메모리(MB) 설정을 사용하여 SQL Server 버퍼 풀에 사용할 수 있는 메모리 양을 조정할 수 있지만 SQL Server에 사용할 수 있는 실제 메모리 양을 초과할 수는 없습니다. 최대 서버 메모리(MB) 서버 구성 옵션에 대한 자세한 내용은 서버 메모리 구성 옵션을 참조하세요.
memory.memorylimitmb
에 대해set
명령을 사용하여 mssql-conf 스크립트를 루트 권한으로 실행합니다. 다음 예제에서는 SQL Server에 사용할 수 있는 메모리를 3.25GB(3,328MB)로 변경합니다.sudo /opt/mssql/bin/mssql-conf set memory.memorylimitmb 3328
변경 내용을 적용하려면 SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
추가 메모리 설정
다음 옵션은 메모리 설정에 사용할 수 있습니다.
옵션 | 설명 |
---|---|
memory.disablememorypressure |
SQL Server는 메모리 압력을 사용하지 않도록 설정합니다. 값은 false 또는 true (기본값)일 수 있습니다. 메모리 압력을 사용하지 않도록 설정하면 SQL Server에서 실제 메모리 사용량을 memory.memorylimitmb 제한하는 데 사용하는 신호가 억제되어 결국 사용량이 해당 제한을 초과하게 됩니다. |
memory.memory_optimized |
SQL Server 메모리 최적화 기능인 영구 메모리 파일 향상 기능, 메모리 보호를 사용하거나 사용하지 않도록 설정합니다. 값은 true 또는 false 일 수 있습니다. |
memory.enablecontainersharedmemory |
SQL Server 컨테이너에만 적용됩니다. 이 설정을 사용하여 SQL Server 컨테이너 내에서 공유 메모리를 사용하도록 설정합니다. 자세한 내용은 컨테이너에서 VDI 백업 및 복원 사용을 참조하세요. 값은 false 또는 true (기본값)일 수 있습니다. |
MSDTC 구성
network.rpcport
및 distributedtransaction.servertcpport
설정은 MSDTC(Microsoft Distributed Transaction Coordinator)를 구성하는 데 사용됩니다. 이 설정을 변경하려면 다음 명령을 실행합니다.
network.rpcport
에 대해set
명령을 사용하여 mssql-conf 스크립트를 루트 권한으로 실행합니다.sudo /opt/mssql/bin/mssql-conf set network.rpcport <rcp_port>
그런 다음,
distributedtransaction.servertcpport
설정을 지정합니다.sudo /opt/mssql/bin/mssql-conf set distributedtransaction.servertcpport <servertcpport_port>
이 값을 설정하는 것 외에도 라우팅을 구성하고 포트 135에 대한 방화벽을 업데이트해야 합니다. 수행하는 방법에 대한 자세한 내용은 Linux에서 MSDTC(Microsoft Distributed Transaction Coordinator)를 구성하는 방법을 참조하세요.
MSDTC를 모니터링하고 문제 해결하는 데 사용할 수 있는 mssql-conf에 대한 여러 가지 다른 설정이 있습니다. 다음 표에서는 이 설정에 대해 간략하게 설명합니다. 해당 사용에 대한 자세한 내용은 Windows 지원 문서 Windows 10 컴퓨터에서 MS DTC에 대한 진단 추적 사용의 세부 정보를 참조하세요.
옵션 | 설명 |
---|---|
distributedtransaction.allowonlysecurerpccalls |
분산 트랜잭션에 대한 보안 전용 RPC 호출 구성 |
distributedtransaction.fallbacktounsecurerpcifnecessary |
분산 트랜잭션에 대한 보안 전용 RPC 호출을 구성 |
distributedtransaction.maxlogsize |
DTC 트랜잭션 로그 파일 크기(MB). 기본값은 64MB입니다. |
distributedtransaction.memorybuffersize |
추적이 저장되는 순환 버퍼 크기. 이 크기는 MB단위이며 기본값은 10MB임 |
distributedtransaction.servertcpport |
MSDTC rpc 서버 포트 |
distributedtransaction.trace_cm |
연결 관리자의 추적 |
distributedtransaction.trace_contact |
연락처 풀 및 연락처 추적 |
distributedtransaction.trace_gateway |
게이트웨이 원본 추적 |
distributedtransaction.trace_log |
로그 추적 |
distributedtransaction.trace_misc |
다른 범주로 분류할 수 없는 추적. |
distributedtransaction.trace_proxy |
MSDTC 프록시에서 생성된 추적 |
distributedtransaction.trace_svc |
서비스 및 .exe 파일 시작 추적 |
distributedtransaction.trace_trace |
추적 인프라 자체 |
distributedtransaction.trace_util |
여러 위치에서 호출되는 유틸리티 루틴 추적 |
distributedtransaction.trace_xa |
XATM(XA 트랜잭션 관리자) 추적 원본 |
distributedtransaction.tracefilepath |
추적 파일을 저장해야 하는 폴더 |
distributedtransaction.turnoffrpcsecurity |
분산 트랜잭션에 대한 RPC 보안 사용 또는 사용 안 함 |
Machine Learning Services EULA 수락
데이터베이스 엔진에 기계 학습 R 또는 Python 패키지를 추가하려면 R 및 Python의 오픈 소스 배포에 대한 사용 조건에 동의해야 합니다. 다음 표에서는 mlservices
EULA에 관련된 사용 가능한 모든 명령 또는 옵션을 열거합니다. 동일한 EULA 매개 변수는 설치된 항목에 따라 R 및 Python에 사용됩니다.
# For all packages: database engine and mlservices
# Setup prompts for mlservices EULAs, which you need to accept
sudo /opt/mssql/bin/mssql-conf setup
# Add R or Python to an existing installation
sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml
# Alternative valid syntax
# Adds the EULA section to the INI and sets acceptulam to yes
sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y
# Rescind EULA acceptance and removes the setting
sudo /opt/mssql/bin/mssql-conf unset EULA accepteulaml
mssql.conf 파일에 직접 EULA 동의를 추가할 수도 있습니다.
[EULA]
accepteula = Y
accepteulaml = Y
아웃바운드 네트워크 액세스 사용
SQL Server Machine Learning Services 기능에서 R, Python 및 Java 확장에 대한 아웃바운드 네트워크 액세스는 기본적으로 사용하지 않도록 설정됩니다. 아웃바운드 요청을 사용하도록 설정하려면 mssql-conf를 outboundnetworkaccess
사용하여 부울 속성을 설정합니다.
속성을 설정한 후 SQL Server 실행 패드 서비스를 다시 시작하여 INI 파일에서 업데이트된 값을 읽습니다. 다시 시작 메시지가 확장성 관련 설정이 수정될 때마다 사용자에게 알려줍니다.
# Adds the extensibility section and property.
# Sets "outboundnetworkaccess" to true.
# This setting is required if you want to access data or operations off the server.
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1
# Turns off network access but preserves the setting
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 0
# Removes the setting and rescinds network access
sudo /opt/mssql/bin/mssql-conf unset extensibility.outboundnetworkaccess
mssql.conf 파일에 직접 outboundnetworkaccess
를 추가할 수도 있습니다.
[extensibility]
outboundnetworkaccess = 1
Azure Key Vault에 대한 SQL Server 커넥터의 로깅 수준 변경
SQL Server 2022(16.x) CU 14 이상 버전에서 SQL Server on Linux는 Azure Key Vault를 사용하여 TDE 확장 가능 키 관리를 지원합니다. 로깅 수준을 다음 값 중 하나로 설정할 수 있습니다.
수준 | 설명 |
---|---|
0 (기본값) |
정보 |
1 |
Error |
2 |
로그 없음 |
SQL Server 커넥터에 대한 로깅 수준을 변경하려면 다음 예제를 사용합니다.
sudo /opt/mssql/bin/mssql-conf set sqlconnector.logginglevel 1
자세한 내용은 SQL 암호화 기능을 통해 SQL Server 커넥터 사용을 참조하세요.
TCP 포트 변경
network.tcpport
설정은 SQL Server가 연결을 수신 대기하는 TCP 포트를 변경합니다. 기본적으로 이 포트는 1433으로 설정됩니다. 포트를 변경하려면 다음 명령을 실행합니다.
network.tcpport
에 대해set
명령을 사용하여 mssql-conf 스크립트를 루트 권한으로 실행합니다.sudo /opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
이제 SQL Server에 연결할 때 호스트 이름 또는 IP 주소 뒤에 쉼표(,)를 사용하여 사용자 지정 포트를 지정해야 합니다. 예를 들어 sqlcmd와 연결하려면 다음 명령을 사용합니다.
sqlcmd -S localhost,<new_tcp_port> -U test -P test
TLS 설정 지정
다음 옵션은 Linux에서 실행되는 SQL Server 인스턴스에 대해 TLS를 구성합니다.
옵션 | 설명 |
---|---|
network.forceencryption |
1인 경우 SQL Server는 모든 연결을 강제로 암호화합니다. 기본적으로 이 옵션은 0입니다. |
network.tlscert |
SQL Server가 TLS에 사용하는 인증서 파일의 절대 경로입니다. 예제: /etc/ssl/certs/mssql.pem 인증서 파일은 mssql 계정으로 액세스할 수 있어야 합니다. chown mssql:mssql <file>; chmod 400 <file> 을 사용하여 파일에 대한 액세스를 제한하는 것이 좋습니다. |
network.tlskey |
SQL Server가 TLS에 사용하는 프라이빗 키 파일의 절대 경로입니다. 예제: /etc/ssl/private/mssql.key 인증서 파일은 mssql 계정으로 액세스할 수 있어야 합니다. chown mssql:mssql <file>; chmod 400 <file> 을 사용하여 파일에 대한 액세스를 제한하는 것이 좋습니다. |
network.tlsprotocols |
SQL Server에서 허용하는 TLS 프로토콜의 쉼표로 구분된 목록입니다. SQL Server는 항상 가장 강력한 허용 프로토콜을 협상하려고 시도합니다. 클라이언트에서 허용되는 프로토콜을 지원하지 않으면 SQL Server는 연결 시도를 거부합니다. 호환성을 위해 지원되는 모든 프로토콜이 기본적으로 허용됩니다(1.2, 1.1, 1.0). 클라이언트에서 TLS 1.2을 지원하는 경우 TLS 1.2만 허용하는 것이 좋습니다. |
network.tlsciphers |
SQL Server에서 TLS에 대해 허용하는 암호화를 지정합니다. 이 문자열은 OpenSSL의 암호화 목록 형식에 따라 형식을 지정해야 합니다. 일반적으로 이 옵션을 변경할 필요가 없습니다. 기본적으로 다음 암호화가 허용됩니다. ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA |
network.kerberoskeytabfile |
Kerberos keytab 파일의 경로입니다. |
TLS 설정 사용에 대한 예제는 SQL Server on Linux에 대한 연결 암호화를 참조하세요.
네트워크 설정
SQL Server on Linux와 Active Directory 인증 사용에 대한 포괄적인 정보는 자습서: SQL Server on Linux와 Active Directory 인증 사용을 참조하세요.
다음 옵션은 mssql-conf를 사용하여 구성할 수 있는 추가 네트워크 설정입니다.
옵션 | 설명 |
---|---|
network.disablesssd |
Active Directory 계정 정보에 대한 SSSD 쿼리를 사용하지 않도록 설정하며 기본적으로 LDAP 호출로 지정됩니다. 값은 true 또는 false 일 수 있습니다. |
network.enablekdcfromkrb5conf |
krb5.conf에서 KDC 정보를 조회할 수 있도록 설정합니다. 값은 true 또는 false 일 수 있습니다. |
network.forcesecureldap |
도메인 컨트롤러에 연결하는 데 LDAPS를 사용하도록 강제 적용합니다. 값은 true 또는 false 일 수 있습니다. |
network.ipaddress |
들어오는 연결을 위한 IP 주소입니다. |
network.kerberoscredupdatefrequency |
업데이트해야 하는 kerberos 자격 증명 검사 사이의 시간(초)입니다. 값은 정수입니다. |
network.privilegedadaccount |
Active Directory 인증에 사용할 권한 있는 Active Directory 사용자입니다. 값은 <username> 입니다. 자세한 내용은 자습서: Linux에서 SQL Server와 Active Directory 인증 사용 |
uncmapping |
로컬 경로에 UNC 경로를 매핑합니다. 예: sudo /opt/mssql/bin/mssql-conf set uncmapping //servername/sharename /tmp/folder . |
ldaphostcanon |
바인딩 단계 중에 OpenLDAP가 호스트 이름을 정식화해야 하는지 여부를 설정합니다. 값은 true 또는 false 일 수 있습니다. |
추적 플래그 사용 또는 사용 안 함
이 traceflag
옵션은 SQL Server 서비스를 시작하기 위해 추적 플래그를 사용하거나 사용하지 않도록 설정합니다. 추적 플래그를 사용하거나 사용하지 않도록 설정하려면 다음 명령을 사용합니다.
다음 명령을 사용하여 추적 플래그를 사용하도록 설정합니다. 예를 들어 추적 플래그 1234의 경우:
sudo /opt/mssql/bin/mssql-conf traceflag 1234 on
여러 추적 플래그를 개별적으로 지정하여 사용하도록 설정할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf traceflag 2345 3456 on
이와 비슷한 방식으로 하나 이상의 사용하도록 설정된 추적 플래그를 지정하고
off
매개 변수를 추가하여 해당 추적 플래그를 사용하지 않도록 설정할 수 있습니다.sudo /opt/mssql/bin/mssql-conf traceflag 1234 2345 3456 off
변경 내용을 적용하려면 SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
설정 제거
mssql-conf set
를 사용하여 지정된 설정을 해제하려면 mssql-conf를 unset
옵션 및 설정 이름과 함께 호출합니다. 이렇게 하면 설정이 삭제되고 효과적으로 기본값으로 돌아갑니다.
다음 예제에서는
network.tcpport
옵션을 삭제합니다.sudo /opt/mssql/bin/mssql-conf unset network.tcpport
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
현재 설정 보기
구성된 설정을 보려면 다음 명령을 실행하여 mssql.conf
파일의 콘텐츠를 출력합니다.
sudo cat /var/opt/mssql/mssql.conf
이 파일에 표시되지 않는 모든 설정은 해당 기본값을 사용합니다. 다음 섹션에서는 샘플 mssql.conf
파일을 제공합니다.
다양한 옵션 보기
mssql-conf 유틸리티를 사용하여 구성할 수 있는 다양한 옵션을 보려면 help
명령을 실행합니다.
sudo /opt/mssql/bin/mssql-conf --help
결과는 각 설정에 대한 다양한 구성 옵션과 간단한 설명을 제공합니다.
mssql.conf 형식
다음 /var/opt/mssql/mssql.conf
파일은 각 설정의 예제를 제공합니다. 이 형식을 사용하여 필요에 따라 mssql.conf
파일을 수동으로 변경할 수 있습니다. 수동으로 파일을 변경하는 경우 변경 내용이 적용되기 전에 SQL Server를 다시 시작해야 합니다. Docker와 함께 mssql.conf
파일을 사용하려면 Docker가 데이터를 유지하도록 해야 합니다. 먼저 호스트 디렉터리에 전체 mssql.conf
파일을 추가한 후 컨테이너를 실행합니다. Linux의 SQL Server에 대한 사용량 및 진단 데이터 수집 구성에 이 예제가 있습니다.
[EULA]
accepteula = Y
[coredump]
captureminiandfull = true
coredumptype = full
[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/
[hadr]
hadrenabled = 0
[language]
lcid = 1033
[memory]
memorylimitmb = 4096
[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0
[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7
[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit
[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456
[EULA]
accepteula = Y
accepteulaml = Y
[coredump]
captureminiandfull = true
coredumptype = full
[distributedtransaction]
servertcpport = 51999
[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/
[hadr]
hadrenabled = 0
[language]
lcid = 1033
[memory]
memorylimitmb = 4096
[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
rpcport = 13500
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0
[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7
[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit
[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456
관련 콘텐츠
- Linux에서 환경 변수를 사용하여 SQL Server 설정 구성
- SQL Server on Linux를 관리하는 데 적합한 도구 선택
- SQL Server Linux 컨테이너 구성 및 사용자 지정
SQL 설명서 작성에 참여하세요.
SQL 콘텐츠를 직접 편집할 수 있다는 것을 알고 계셨나요? 직접 편집하여 설명서를 개선하고, 페이지에 기여자로 참여하세요.
자세한 내용은 SQL Server 설명서에 기여하는 방법을 참조하세요