서버 구성 옵션
적용 대상:SQL ServerAzure SQL Managed Instance
SQL Server Management Studio 또는 sp_configure
시스템 저장 프로시저를 사용하면 구성 옵션을 통해 SQL Server 및 SQL Managed Instance 리소스를 관리하고 최적화할 수 있습니다. 가장 일반적으로 사용하는 서버 구성 옵션은 SQL Server Management Studio를 통해 사용할 수 있으며 모든 구성 옵션에 액세스하려면 sp_configure
를 사용해야 합니다. 이러한 옵션을 변경하기 전에 시스템에 주는 영향을 신중히 고려해야 합니다. 자세한 내용은 서버 속성 보기 또는 변경(SQL Server)을 참조하세요.
중요
고급 옵션은 숙련된 데이터베이스 관리자나 공인된 SQL Server 기술 지원 담당자만 변경해야 합니다.
구성 옵션 범주
구성 변경의 영향이 표시되지 않으면 설치되지 않은 것일 수 있습니다. 구성 옵션의 run_value
가 변경되었는지 확인합니다.
구성 옵션은 옵션 설정 및 RECONFIGURE
(또는 경우에 따라 RECONFIGURE WITH OVERRIDE
) 문 실행 후 즉시 적용됩니다. 특정 옵션을 다시 구성하면 계획 캐시에서 계획을 무효화하여 새 계획이 컴파일됩니다. 자세한 내용은 DBCC FREEPROCCACHE를 참조하세요.
sys.configurations
카탈로그 뷰를 사용하여 config_value
(value
열) 및 run_value
( value_in_use
열) 그리고 구성 옵션에 데이터베이스 엔진 다시 시작(is_dynamic
열)이 필요한지 여부를 확인할 수 있습니다.
SQL Server를 다시 시작해야 하는 경우 옵션은 value
열에만 변경된 값이 표시됩니다. 다시 시작한 뒤에는 value
열과 value_in_use
열 모두에 새 값이 표시됩니다.
일부 옵션은 서버를 다시 시작해야 새 구성 값이 적용됩니다. 새 값을 설정하고 서버를 다시 시작하기 전 sp_configure
을 실행하면 value
카탈로그 뷰의 sys.configurations
열에만 새 값이 나타나고 value_in_use
열에는 나타나지 않습니다. 서버를 다시 시작하면 value_in_use
열에도 새 값이 나타납니다.
참고
config_value
의 sp_configure
결과 집합은 value
카탈로그 뷰의 sys.configurations
열과 동일하며 run_value
은 value_in_use
열과 동일합니다.
자체 구성 옵션은 SQL Server가 시스템의 필요에 따라 조정하는 옵션입니다. 대부분의 경우 이 값을 수동으로 설정할 필요가 없습니다. 예를 들면 최대 작업자 스레드 옵션 및 사용자 연결 옵션이 있습니다.
다음 쿼리를 사용하여 구성된 값이 설치되지 않았는지 확인할 수 있습니다.
SELECT *
FROM sys.configurations
WHERE [value] <> [value_in_use];
값이 구성 옵션에 대한 변경 내용이지만 value_in_use
이 동일하지 않은 경우 RECONFIGURE
명령이 실행되지 않았거나 실패한 것이거나 데이터베이스 엔진을 다시 시작해야 합니다.
예상 동작인 value
및 value_in_use
이 동일하지 않은 두 가지 구성 옵션이 있습니다.
최대 서버 메모리(MB) - 기본 구성된 값
0
이2147483647
열에value_in_use
로 표시됩니다.최소 서버 메모리(MB) - 구성된 기본 값
0
이 32비트 시스템에는8
또는 64비트 시스템에는16
으로value_in_use
열에 표시될 수 있습니다. 경우에 따라value_in_use
을0
으로 표시할 경우 truevalue_in_use
은8
(32비트) 또는16
(64비트)입니다.
is_dynamic
열을 사용하여 구성 옵션을 다시 시작해야 하는지 여부를 확인할 수 있습니다.
1
열의 is_dynamic
값은 RECONFIGURE
명령이 실행될 때 새 값이 즉시 적용된다는 것을 의미합니다. 경우에 따라 데이터베이스 엔진은 새 값을 즉시 구하지 않을 수 있지만 일반적인 실행 과정에서 구할 수 있습니다.
0
열의 is_dynamic
값은 RECONFIGURE
명령이 실행된 경우에도 데이터베이스 엔진이 다시 시작될 때까지 변경된 구성 값이 적용되지 않음을 의미합니다.
동적이 아닌 구성 옵션의 경우 구성 변경을 적용하기 위해 RECONFIGURE
명령이 실행되었는지 알 수 있는 방법이 없습니다. SQL Server를 다시 시작하여 구성 변경을 적용하기 전에 RECONFIGURE
명령을 실행하여 다음 SQL Server를 다시 시작할 때 모든 구성 변경 내용이 적용되도록 합니다.
참고
참고: SQL Server 2014(12.x)는 32비트 운영 체제에서 제공되는 마지막 버전이었습니다.
구성 옵션
다음 표에는 사용 가능한 모든 구성 옵션, 가능한 설정 범위, 기본값 및 지원되는 제품(SQL Server 또는 Azure SQL Managed Instance)이 나열되어 있습니다. 구성 옵션은 다음과 같은 문자 코드로 표시됩니다.
A = 숙련된 데이터베이스 관리자나 공인된 SQL Server 전문가만 변경해야 하는 고급 옵션이며
show advanced options
설정을1
로 설정해야 합니다.RR = 데이터베이스 엔진을 다시 시작해야 하는 옵션입니다.
RP = PolyBase 엔진을 다시 시작해야 하도록 지정하는 옵션입니다.
SC = 자체 구성 옵션입니다.
참고
참고: SQL Server 2014(12.x)는 32비트 운영 체제에서 제공되는 마지막 버전이었습니다.
구성 옵션 | 사용 가능한 값: | SQL Server | Azure SQL Managed Instance |
---|---|---|---|
access check cache bucket count (A) |
최소: 0 최대: 16384 기본값: 0 |
예 | 예 |
access check cache quota (A) |
최소: 0 최대: 2147483647 기본값: 0 |
예 | 예 |
Ad Hoc Distributed Queries(A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
ADR cleaner retry timeout (min)(A) |
최소: 0 최대: 32767 기본값: 120 |
SQL Server 2019(15.x) 이상 버전 | 예 |
ADR 클리너 스레드 수(A) |
최소: 1 최대값: 32767 기본값: 1 |
SQL Server 2019(15.x) 이상 버전 | 예 |
ADR Preallocation Factor(A) |
최소: 0 최대: 32767 기본값: 4 |
SQL Server 2019(15.x) 이상 버전 | 예 |
affinity I/O mask (A, RR) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예(64비트만 해당) | 아니요 |
affinity mask (A) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예(64비트만 해당) | 예 |
affinity64 I/O mask(A, RR) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예(64비트만 해당) | 예 |
affinity64 mask(A) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예(64비트만 해당) | 아니요 |
Agent XPs (A) 1 |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
allow polybase export |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2016(13.x) 이상 버전 | 아니요 |
업데이트 허용 경고: 사용되지 않습니다. 사용하지 마세요. 다시 구성하는 동안 오류가 발생합니다. |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
automatic soft-NUMA disabled(A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
백업 체크섬 기본값 |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
backup compression algorithm |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2022(16.x) 이상 버전 | 예 |
backup compression default |
최소: 0 최대값: 1 (SQL Server 2022(16.x) 이전) 또는 2 (SQL Server 2022(16.x) 이상 버전)기본값: 0 |
예 | 예 |
blocked process threshold(s)(A) |
최소: 5 최대: 86400 기본값: 0 |
예 | 예 |
c2 audit mode (A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
clr enabled |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
clr strict security (A) |
최소: 0 최대: 1 기본값: 1 |
SQL Server 2017(14.x) 이상 버전 | 예 |
column encryption enclave type(RR) |
최소: 0 최대: 2 기본값: 0 |
예 | 아니요 |
common criteria compliance enabled (A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
contained database authentication |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
cost threshold for parallelism (A) |
최소: 0 최대: 32767 기본값: 5 |
예 | 예 |
cross db ownership chaining |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
cursor threshold (A) |
최소: -1 최대: 2147483647 기본값: -1 |
예 | 예 |
TB에서 처리된 데이터 일별 제한 |
최소: 0 최대: 2147483647 기본값: 2147483647 |
예 | 예 |
TB에서 처리된 데이터 월별 제한 |
최소: 0 최대: 2147483647 기본값: 2147483647 |
예 | 예 |
TB에서 처리된 데이터 주별 제한 |
최소: 0 최대: 2147483647 기본값: 2147483647 |
예 | 예 |
Database Mail XPs (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
default full-text language (A) |
최소: 0 최대: 2147483647 기본값: 1033 |
예 | 예 |
default language |
최소: 0 최대: 9999 기본값: 0 |
예 | 예 |
default trace enabled (A) |
최소: 0 최대: 1 기본값: 1 |
예 | 예 |
disallow results from triggers (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
EKM provider enabled(A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
external scripts enabled(SC) |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2016(13.x) 이상 버전 | 예 |
FILESTREAM 액세스 수준 |
최소: 0 최대: 2 기본값: 0 |
예 | 아니요 |
fill factor(%)(A, RR) |
최소: 0 최대: 100 기본값: 0 |
예 | 아니요 |
FT 크롤링 대역폭(최댓값)(A) |
최소: 0 최대: 32767 기본값: 100 |
예 | 예 |
FT 크롤링 대역폭(최솟값)(A) |
최소: 0 최대: 32767 기본값: 0 |
예 | 예 |
FT 알림 대역폭(최댓값)(A) |
최소: 0 최대: 32767 기본값: 100 |
예 | 예 |
FT 알림 대역폭(최솟값)(A) |
최소: 0 최대: 32767 기본값: 0 |
예 | 예 |
hadoop 연결(RP) |
최소: 0 최대: 7 기본값: 0 |
SQL Server 2016(13.x) 이상 버전 | 예 |
하드웨어 오프로드 구성(A, RR) |
최소: 0 최대: 255 기본값: 0 |
SQL Server 2022(16.x) 이상 버전 | 예 |
하드웨어 오프로드 사용(A, RR) |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2022(16.x) 이상 버전 | 예 |
하드웨어 오프로드 모드(A, RR) |
최소: 0 최대: 255 기본값: 0 |
SQL Server 2022(16.x) 이상 버전 | 예 |
in-doubt xact resolution (A) |
최소: 0 최대: 2 기본값: 0 |
예 | 예 |
index create memory(KB)(A, SC) |
최소: 704 최대: 2147483647 기본값: 0 |
예 | 예 |
lightweight pooling (A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
locks (A, RR, SC) |
최소: 5000 최대: 2147483647 기본값: 0 |
예 | 아니요 |
max degree of parallelism (A) |
최소: 0 최대: 32767 기본값: 0 |
예 | 예 |
max full-text crawl range (A) |
최소: 0 최대: 256 기본값: 4 |
예 | 예 |
최대 RPC 요청 매개 변수(KB)(A) |
최소: 0 최대: 2147483647 기본값: 0 |
SQL Server 2019(15.x) CU 26 이상 버전 및 SQL Server 2022(16.x) CU 13 이상 버전 | 아니요 |
max server memory(MB)(A, SC) |
최소: 16 최대: 2147483647 기본값: 2147483647 |
예 | 예 |
max text repl size(B) |
최소: 0 최대: 2147483647 기본값: 65536 |
예 | 예 |
max worker threads (A) 2 |
최소: 128 최대: 32767 기본값: 0 2048 은 64비트 SQL Server의 경우 권장 최대값입니다(32비트의 1024 ). |
예 | 예 |
media retention(A) |
최소: 0 최대: 365 기본값: 0 |
예 | 아니요 |
min memory per query(KB)(A) |
최소: 512 최대: 2147483647 기본값: 1024 |
예 | 아니요 |
min server memory(MB)(A, SC) |
최소: 0 최대: 2147483647 기본값: 0 |
예 | 아니요 |
중첩 트리거 |
최소: 0 최대: 1 기본값: 1 |
예 | 예 |
network packet size(B)(A) |
최소: 512 최대: 32767 기본값: 4096 |
예 | 예 |
Ole Automation Procedures (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
개체 열기(A, RR) 경고: 사용되지 않습니다. 사용하지 마세요. |
최소: 0 최대: 2147483647 기본값: 0 |
예 | 아니요 |
optimize for ad hoc workloads (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
PH 시간 제한(A) |
최소: 1 최대: 3600 기본값: 60 |
예 | 예 |
PolyBase 사용 가능 |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2019(15.x) 이상 버전 | 아니요 |
Polybase 네트워크 암호화 |
최소: 0 최대: 1 기본값: 1 |
예 | 예 |
precompute rank (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
priority boost (A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
query governor cost limit (A) |
최소: 0 최대: 2147483647 기본값: 0 |
예 | 예 |
query wait(s) (A) |
최소: -1 최대: 2147483647 기본값: -1 |
예 | 예 |
복구 간격(분)(A, SC) |
최소: 0 최대: 32767 기본값: 0 |
예 | 예 |
remote access (RR) |
최소: 0 최대: 1 기본값: 1 |
예 | 아니요 |
remote admin connections |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
원격 데이터 보관 |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
원격 로그인 시간 초과(s) |
최소: 0 최대: 2147483647 기본값: 10 |
예 | 예 |
remote proc trans |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
remote query timeout(s) |
최소: 0 최대: 2147483647 기본값: 600 |
예 | 예 |
복제 XP(A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
scan for startup procs (A, RR) |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
server trigger recursion |
최소: 0 최대: 1 기본값: 1 |
예 | 예 |
set working set size (A, RR) 경고: 사용되지 않습니다. 사용하지 마세요. |
최소: 0 최대: 1 기본값: 0 |
예 | 아니요 |
show advanced options |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
SMO and DMO XPs (A) |
최소: 0 최대: 1 기본값: 1 |
예 | 예 |
복구 모델 오류 표시 안 함(A) |
최소: 0 최대: 1 기본값: 0 |
아니요 | 예 |
tempdb metadata memory-optimized(A, RR) |
최소: 0 최대: 1 기본값: 0 |
SQL Server 2019(15.x) 이상 버전 | 아니요 |
transform noise words (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
two digit year cutoff (A) |
최소: 1753 최대: 9999 기본값: 2049 |
예 | 예 |
user connections (A, RR, SC) |
최소: 0 최대: 32767 기본값: 0 |
예 | 아니요 |
user options |
최소: 0 최대: 32767 기본값: 0 |
예 | 예 |
SQL Server의 버전 상위 부분(A) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예 | 예 |
SQL Server의 버전 하위 부분(A) |
최소: -2147483648 최대: 2147483647 기본값: 0 |
예 | 예 |
xp_cmdshell (A) |
최소: 0 최대: 1 기본값: 0 |
예 | 예 |
1 SQL Server Agent 시작 시 1
으로 변경됩니다. 설치 중에 SQL Server 에이전트가 자동으로 시작되도록 설정하는 경우 기본값은 0
입니다.
2 0(0
)은 논리 프로세서 수에 따라 최대 작업자 스레드 수를 자동으로 구성합니다. 자세한 내용은 자동으로 구성된 최대 작업자 스레드 수를 참조 하세요.