고성능 워크로드를 사용하는 SQL Server 2017과 2016에 대한 권장 업데이트 및 구성 옵션

이 문서에서는 SQL Server 2016 이상 버전에서 사용할 수 있는 성능 향상 및 구성 옵션 목록을 설명합니다.

원래 제품 버전: Windows의 SQL Server 2017, SQL Server 2016
원래 KB 번호: 4465518

소개

이 문서에서는 다양한 제품 업데이트 및 구성 옵션을 통해 Microsoft SQL Server 2017 및 SQL Server 2016에 사용할 수 있는 성능 향상 및 변경 사항을 설명합니다.

SQL Server 인스턴스의 성능을 향상시키기 위해 이러한 업데이트를 적용하는 것이 좋습니다. 개선 수준은 워크로드 패턴, 경합 지점, 프로세서 레이아웃(NUMA 노드의 프로세서 그룹, 소켓, NUMA 노드 및 코어 수) 및 시스템에서 사용 가능한 메모리 양을 비롯한 다양한 요인에 따라 달라집니다.

SQL Server 지원 팀은 이러한 업데이트 및 구성 변경을 사용하여 여러 NUMA 노드와 많은 프로세서가 포함된 하드웨어 시스템을 사용하는 고객 워크로드에 대해 합리적인 성능을 향상했습니다. 지원 팀은 나중에 이 문서를 다른 업데이트로 계속 업데이트할 예정입니다.

정의: 고급 시스템
"하이 엔드 시스템"에는 일반적으로 여러 소켓, 소켓당 8개 이상의 코어, 반테라바이트 이상의 메모리가 있습니다.

SQL Server 2017 및 SQL Server 2016의 성능을 개선하기 위한 이러한 권장 사항은 다음과 같이 5개의 테이블로 그룹화됩니다.

  • 표 1 에는 고급 시스템의 확장성을 위해 가장 자주 권장되는 업데이트 및 추적 플래그가 포함되어 있습니다.
  • 표 2 에는 다른 성능 튜닝에 대한 권장 사항 및 지침이 포함되어 있습니다.
  • 표 3 에는 SQL 2017 및 2016의 동작 및 기본 설정 변경에 대한 정보가 포함되어 있습니다.
  • 표 4 에는 CU(누적 업데이트)와 함께 포함된 다른 확장성 수정 사항이 포함되어 있습니다.
  • 표 5 에는 Linux 환경에 배포된 SQL Server 인스턴스에 대한 권장 수정 사항 및 구성 지침이 포함되어 있습니다.

참고 항목

추가 컨텍스트는 자주 사용되는 노브를 참조 하여 사용 중인 SQL Server를 튜닝합니다.

Important

추적 플래그를 사용하도록 설정한 경우 SQL Server 2017 또는 SQL Server 2016으로 마이그레이션을 실행한 후 해당 문서의 정보를 검토해야 합니다. 이 문서에 나열된 많은 추적 플래그 및 구성 옵션은 SQL Server 2017 및 SQL Server 2016의 기본 옵션이 되었습니다.

표 1. 고급 시스템의 중요한 업데이트 및 추적 플래그

다음 표를 검토하고 SQL Server 인스턴스가 적용 가능한 버전 및 빌드 범위 열의 요구 사항을 충족하는지 확인한 후 추적 플래그 열에서 추적 플래그 사용하도록 설정합니다.

참고 항목

  • 적용 가능한 버전 및 빌드 는 변경 또는 추적 플래그가 도입된 특정 업데이트를 나타냅니다. CU를 지정하지 않으면 SP의 모든 CU가 포함됩니다.
  • 해당 버전 및 빌드 는 변경 또는 추적 플래그가 기본 동작이 된 특정 업데이트를 나타냅니다. 따라서 해당 업데이트를 적용하는 것만으로도 혜택을 받을 수 있습니다.

Important

Always On 환경에서 추적 플래그가 있는 수정을 사용하도록 설정하는 경우 가용성 그룹의 일부인 모든 복제본에서 수정 및 추적 플래그를 사용하도록 설정해야 합니다.

고려해야 할 시나리오 및 증상 추적 플래그 적용 가능한 버전 및 빌드 범위 해당되지 않는 버전 및 빌드 범위 자세한 내용은 기술 자료 문서 또는 블로그 링크
많은 SOS_CACHESTORE 스핀 잠금 경합 또는 계획이 임시 쿼리 워크로드에서 자주 제거됩니다. T174 SQL Server 2016 RTM에서 현재 SP/CU SQL Server 2017 RTM에서 현재 SP/CU로 None KB3026083 - 수정: 임시 SQL Server 계획 캐시에서 SOS_CACHESTORE 스핀 잠금 경합으로 인해 SQL Server에서 높은 CPU 사용량이 발생합니다.
계획 캐시의 항목은 다른 캐시 또는 메모리 클럭의 증가로 인해 제거됩니다. 쿼리를 자주 다시 컴파일하기 때문에 CPU 사용량이 높습니다. T8032 SQL Server 2016 RTM에서 현재 SP/CU SQL Server 2017 RTM에서 현재 SP/CU로 None DBCC TRACEON - 추적 플래그 설명서(Transact-SQL). 계획 캐시 내부 항목의 캐시 크기 관리 섹션을 참조하세요.
tempdb는 많이 사용되며 tempdb의 데이터를 많이 수정했습니다. tempdb 데이터베이스에 대해 간접 검사점을 사용할 때 생성할 수 없는 스케줄러 메시지가 발생합니다. T3468 SQL Server 2016 SP1 CU5에서 현재 SP/CU SQL Server 2017 CU1에서 현재 SP/CU로 None 간접 검사점 및 tempdb - 양호, 불량 및 비수익 스케줄러 KB4040276 - FIX: tempdb 데이터베이스의 간접 검사점은 SQL Server 2016 및 2017에서 "비수익 스케줄러" 오류를 발생합니다.
tempdb에서 빈번하게 짧은 트랜잭션이 발생합니다. 이러한 트랜잭션에 대한 CPU 사용량이 증가했음을 알 수 있습니다. 일반 조건 준수를 사용할 수 없습니다. T3427 SQL Server 2016 SP1 CU2에서 SQL Server 2016 SP2 CU2로 SQL Server 2017 RTM KB3216543 - 수정: SQL Server 2016 및 2017에서 많은 빈번하고 짧은 트랜잭션을 활용하는 워크로드는 SQL Server 2014보다 더 많은 CPU를 사용할 수 있습니다.
특정 쿼리 성능 문제를 해결하고 있습니다. 최적화 프로그램 수정은 기본적으로 사용하지 않도록 설정됩니다.
T4199 SQL Server 2016 RTM에서 현재 SP/CU SQL Server 2017 RTM에서 현재 SP/CU로 None KB974006 - SQL Server 쿼리 최적화 프로그램 핫픽스 추적 플래그 4199 서비스 모델
참고 서버 수준 추적 플래그 4199 대신 데이터베이스 범위 옵션 QUERY_OPTIMIZER_HOTFIXES 또는 쿼리 힌트 ENABLE_QUERY_OPTIMIZER_HOTFIXES 사용하는 것이 좋습니다.
통계 작업을 완료하는 데 시간이 오래 걸립니다. 여러 통계 업데이트 작업을 병렬로 실행할 수 없습니다. T7471 SQL Server 2016 RTM CU1에서 현재 SP/CU SQL Server 2017 RTM에서 현재 SP/CU로 None KB3156157 - 단일 테이블에서 여러 통계에 대해 여러 UPDATE STATISTICS를 동시에 실행할 수 있습니다.
SQL 2014 및 SQL 2016을 사용하여 업데이트 통계 성능 향상

표 2. SQL Server 인스턴스의 성능 향상을 위한 일반적인 고려 사항 및 모범 사례

기술 자료 문서 또는 온라인 설명서 리소스 열의 내용을 검토하고 권장 작업 열에서 지침을 구현하는 것이 좋습니다.

기술 자료 문서 또는 온라인 설명서 리소스 권장 조치
최대 병렬 처리 수준 서버 구성 옵션 구성 저장 프로시저를 sp_configure 사용하여 기술 자료 문서에 따라 SQL Server 인스턴스에 대한 최대 병렬 처리 수준 서버 구성 옵션을 구성하도록 구성을 변경합니다.
버전 별 컴퓨팅 용량 제한 SQL Server 2012에 대한 라이선스 코어 제한 서버 및 CAL(클라이언트 액세스 라이선스) 라이선스가 있는 Enterprise Edition은 SQL Server 인스턴스당 20코어로 제한됩니다.

코어 기반 서버 라이선스 모델에서는 제한이 없습니다.

SQL Server 버전을 적절한 SKU로 업그레이드하여 모든 하드웨어 리소스를 사용하는 것이 좋습니다.
분산된 전원 계획을 사용하는 경우 Windows Server의 성능 저하 문서를 검토하고 Windows 관리자와 협력하여 문서의 해결 섹션에 나열된 솔루션 중 하나를 구현합니다.
임시 워크로드에 대한 최적화 서버 구성 옵션

FORCED PARAMETERIZATION
계획 캐시의 항목은 다른 캐시 또는 메모리 클럭의 증가로 인해 제거됩니다. 캐시가 최대 항목 수에 도달하면 계획 캐시 제거가 발생할 수도 있습니다. 위에서 설명한 추적 플래그 8032 외에도 임시 워크로드 서버 옵션 및 FORCED PARAMETERIZATION 데이터베이스 옵션에 대한 최적화를 고려합니다.
SQL Server에서 버퍼 풀 메모리의 페이징을 줄이는 방법

SQL Server 2012 이상 버전의 메모리 구성 및 크기 조정 고려 사항
메모리에서 페이지 잠금 옵션(Windows) 사용자 권한을 SQL 서비스 시작 계정에 할당합니다. SQL Server 2012에서 "잠긴 페이지" 기능을 사용하도록 설정하는 방법을 참조하세요.

최대 서버 메모리를 총 실제 메모리의 약 90%로 설정합니다. 서버 메모리 구성 옵션 설정이 선호도 마스크 설정을 사용하도록 구성된 노드에서만 메모리를 사용하는지 확인합니다.
SQL Server 및 큰 페이지 설명... 특히 분석 또는 데이터 웨어하우징 워크로드의 경우 메모리가 많은 서버가 있는 경우 추적 플래그 834를 사용하도록 설정하는 것이 좋습니다. SQL Server에서 큰 페이지 메모리 모델과 Columnstore 인덱스의 상호 운용성을 염두에 두어야 합니다.
대규모 보안 캐시와 관련된 쿼리 성능 문제

SQL Server에서 TokenAndPermUserStore 캐시의 크기가 커지면 쿼리 실행을 완료하는 데 시간이 더 오래 걸립니다.

DBCC TRACEON - 추적 플래그(Transact-SQL)
보안 캐시가 큰 크기로 증가하고 성능 문제 및 스핀 잠금 경합이 발생하는 경우 추적 플래그 T4610T4618 을 사용하도록 설정하여 TokenAndPermuserStore의 최대 크기를 줄이는 것이 좋습니다.
ALTER WORKLOAD GROUP KB3107401 - SQL Server 2012에서 새 쿼리 메모리 부여 옵션(min_grant_percent 및 max_grant_percent)을 사용할 수 있습니다. 대용량 메모리 부여를 소모하는 쿼리가 많은 경우 리소스 관리자 구성의 기본 워크로드 그룹을 기본값 25%에서 더 낮은 값으로 줄 request_max_memory_grant_percent 입니다. SQL Server에서 새 쿼리 메모리 부여 옵션을 사용할 수 있습니다(min_grant_percentmax_grant_percent).
SQL 2016 - 더 빠르게 실행: 자동 TEMPDB 구성 업그레이드된 서버인 경우 tempdb 데이터베이스에 대해 크기가 같은 여러 데이터 파일을 추가합니다. 새 설치의 경우 설치 프로그램에서 자동으로 이 작업을 수행합니다.
TEMPDB - 파일 및 추적 플래그 및 업데이트 tempdb 최적화를 사용하고 임시 개체에서 DDL을 방지하거나 줄여 확장성을 향상시킵니다.
인스턴트 파일 초기화 Windows 관리자와 협력하여 SQL Server 서비스 계정에 온라인 설명서 항목의 정보에 따라 볼륨 유지 관리 작업 수행 사용자 권한을 부여합니다.
SQL Server의 "자동 증가" 및 "자동 축소" 설정에 대한 고려 사항 데이터베이스의 현재 설정을 확인하고 기술 자료 문서의 권장 사항에 따라 구성되었는지 확인합니다.
간접 검사점 SQL Server 2014 및 2012에서 I/O 동작을 최적화하기 위해 사용자 데이터베이스에서 간접 검사점을 사용하도록 설정하는 것이 좋습니다.
SQL Server: 대형 RAM 및 DB 검사점 SQL Server 2014 및 2012에서 I/O 동작을 최적화하기 위해 사용자 데이터베이스에서 간접 검사점을 사용하도록 설정하는 것이 좋습니다. 참조 간접 검사점 및 tempdb에서 tempdb에 필요한 조정을 검토합니다. 정상, 불량 및 비수익 스케줄러입니다.
KB3009974 - 수정: 디스크에 SQL Server AG 및 Logshipping 환경의 주 복제본 및 보조 복제본 로그 파일에 대한 섹터 크기가 서로 다른 경우 동기화 속도가 느려집니다. 주 복제본의 트랜잭션 로그가 512 바이트 섹터 크기의 디스크에 있고 보조 복제본 트랜잭션 로그가 4K 섹터 크기의 드라이브에 있는 가용성 그룹이 있는 경우 동기화 속도가 느려질 수 있습니다. 이 경우 TF 1800을 사용하도록 설정하면 문제가 해결됩니다. 자세한 내용은 추적 플래그 1800을 참조 하세요.
쿼리 프로파일링 인프라

KB3170113 -SQL Server 2014 SP2의 실행 계획 XML 및 확장 이벤트에서 연산자별 쿼리 실행 통계를 노출하도록 업데이트
SQL Server가 아직 CPU 바인딩되지 않았고 워크로드에 대해 1.5%에서 2%의 오버헤드가 무시할 수 있는 경우 TF 7412를 시작 추적 플래그로 사용하도록 설정하는 것이 좋습니다. 이 플래그를 사용하면 SQL Server 2014 SP2 이상에서 간단한 프로파일링을 사용할 수 있습니다. 이렇게 하면 프로덕션 환경에서 실시간 쿼리 문제 해결을 수행할 수 있습니다.
최상의 쿼리 계획 활성화를 쿼리 저장소 사용하여 계획 선택 회귀 식별 쿼리 저장소 기능을 사용하여 회귀되거나 제대로 수행되지 않는 쿼리를 식별합니다. 카디널리티 추정으로 인해 쿼리 성능 문제가 발생하는 경우 적절한 CE 버전(데이터베이스 범위 옵션 LEGACY_CARDINALITY_ESTIMATION, 쿼리 힌트 LEGACY_CARDINALITY_ESTIMATION, 데이터베이스 호환성 수준 또는 추적 플래그 9481)을 선택합니다.
새 카디널리티 추정기에서 조인 포함 가정은 쿼리 성능을 저하합니다. 조인 및 필터를 사용하는 쿼리를 평가하여 단순 및 기본 포함의 효과를 이해합니다. 기본 카디널리티 추정기를 사용하는 경우 기본 포함 대신 단순 포함에 추적 플래그 9476을 사용합니다.
호환성 수준 130 호환성 수준 140 개선 사항 개선 데이터베이스 호환성 수준 130 이상을 사용하여 다음과 같은 개선 사항을 활용할 수 있습니다.
  • 더 큰 테이블에 대한 기존 통계를 업데이트하기 위한 적응형 및 적극적인 임계값
  • 통계 업데이트를 위한 더 나은 샘플링 및 잠금 메커니즘
  • 다중 스레드 프로세스에서 샘플링되는 통계
  • 병렬 처리를 사용하여 삽입 선택 실행 기능

  • 데이터베이스 호환성 수준 140 이상을 사용하여 다음 개선 사항을 활용할 수 있습니다.
  • 다중 문 테이블 반환 함수 및 적응 조인에 인터리브 실행과 같은 새로운 기능을 사용하여 카디널리티 예측 및 계획 품질 향상
  • 메모리 부여 피드백을 통해 메모리 사용량 향상
  • 쿼리 저장소에 대한 모범 사례
    캡처 모드를 자동으로 설정
    추적 플래그 7745 및 7752를 사용하도록 설정하여 고가용성 및 재해 복구 시나리오에서 쿼리 저장소 성능을 향상시킵니다.

    KB4340759 수정 사항 적용 - 해결 방법: 많은 워크로드에서 쿼리 저장소 스핀 잠금 경합이 발생하는 경우 쿼리 저장소 사용하도록 설정된 경우 SQL Server 2016의 성능 저하
    SQL Server 2016/2017: 가용성 그룹 보조 복제본 다시 실행 모델 및 성능 너무 많은 대기(PARALLEL_REDO_TRAN_TURNDPT_ENTRY_LOCK또는DIRTY_PAGE_TABLE_LOCK)가 발생하는 경우 이 블로그를 검토하여 수정 작업을 수행합니다(적용 가능한 수정 사항 적용, 다시 실행 모델의 적절한 사용 평가).
    KB2634571 - DBCC CHECKDB 명령이 개선되면 PHYSICAL_ONLY 옵션을 사용할 때 성능이 향상될 수 있습니다.

    DBCC TRACEON - 추적 플래그

    더 빠른 CHECKDB - 파트 IV(SQL CLR UDT)
    큰 데이터베이스(여러 TB 크기)에서 DBCC CHECK 명령을 실행하는 경우 추적 플래그 T2562, T2549T2566을 사용하는 것이 좋습니다.

    이제 SQL Server 2016의 EXTENDED_LOGICAL_CHECK 옵션 아래에 몇 가지 검사가 있습니다.
    Spectre 및 멜트다운 사이드 채널 취약성에 대한 공격으로부터 SQL Server 보호 사용자 환경의 다양한 SQL Server 워크로드에서 KVAS(커널 가상 주소 섀도닝), KPTI(커널 페이지 테이블 간접 참조) 및 IBP(간접 분기 예측 완화)의 성능을 신중하게 평가합니다.

    표 3. SQL Server 2017 및 SQL Server 2016에 도입된 중요한 변경 내용

    SQL Server 2017 및 SQL Server 2016에는 확장성 및 성능 영역에서 몇 가지 개선 사항이 포함되어 있습니다. SQL Server 2014 및 SQL Server 2012에 필요한 다양한 구성 변경 및 추적 플래그가 SQL Server 2017 및 2016의 기본 동작이 되었습니다. 이 표에서는 SQL Server 2017 및 SQL Server 2016에서 구현된 모든 변경 내용에 대한 개요를 제공합니다.

    영역 변경 내용 요약 자세한 내용 및 참조
    SQL 엔진 SQL Server 2016 이상 버전에서 사용 중지되거나 더 이상 필요하지 않은 자주 사용되는 추적 플래그: 8048, 8079, 9024, 1236, 1118, 1117, 6498, 8075, 3449, 6532, 6533, 6534 SQL Server 추적 플래그
    데이터베이스 엔진 데이터베이스 엔진 새로운 기능 - SQL Server 2017
    데이터베이스 엔진 SQL Server 2016 데이터베이스 엔진 기능의 주요 변경
    데이터베이스 엔진 SQL Server 2017의 데이터베이스 엔진 기능에 대한 주요 변경 내용
    쿼리 처리 데이터 형식 변환 SQL Server 2016(13.x)는 일부 데이터 형식 변환 및 일부(주로 드문) 작업에서 향상된 기능을 포함합니다. 자세한 내용은 일부 데이터 형식 및 일반적이지 않은 작업 처리 시 SQL Server 2016의 향상된 기능을 참조하세요.
    가용성 그룹 보조 데이터베이스의 경우 초기화 자동 시드는 데이터베이스 미러링 엔드포인트를 사용하여 데이터베이스 콘텐츠를 보조 데이터베이스로 스트리밍하고 적용합니다. SQLSweet16!, 에피소드 2: 가용성 그룹 자동 시드
    가용성 그룹 SQL Server 2016은 로그 블록을 기본에서 보조로 전송할 때 더 적은 컨텍스트 스위치를 사용합니다. SQL 2016 - 더 빠르게 실행: Always On 로그 전송 감소 컨텍스트 전환 SQL Server 2016 - 더 빠르게 실행: Always On 가용성 그룹 터보차저
    가용성 그룹 SQL Server 2016은 향상된 압축 알고리즘과 로그 블록 데이터의 병렬 압축을 사용합니다. SQL 2016 - 더 빠르게 실행됩니다. Always On 병렬 압축/향상된 알고리즘
    가용성 그룹 SQL Server 2016은 AES-NI 암호화 기능을 기반으로 하는 하드웨어를 활용하여 Always On 로그 전달 확장성 및 성능을 중요한 요소로 개선합니다. SQL 2016 - 더 빠르게 실행 - 항상 AES-NI 암호화
    성능 SQL Server 2016은 AVX 또는 SSE에 대한 CPU 기능을 검색하고 하드웨어 기반 벡터 기능을 사용하여 columnstore 데이터를 압축, 빌드 및 처리할 때 확장성 및 성능을 향상시킵니다. SQL 2016 - 더 빠르게 실행됩니다. 열 저장소는 벡터 명령(SSE/AVX)을 사용합니다.
    성능 SQL Server 2016은 CPU 벡터 지침을 활용하여 대량 삽입 성능을 향상시킵니다. SQL 2016 - 더 빠르게 실행됨 - BULK INSERT는 벡터 명령(SSE/AVX)을 사용합니다.
    성능 SQL Server 2016을 사용하면 INSERT... 병렬 처리를 사용하여 작동하는 SELECT 문은 데이터 로드 시간을 크게 줄입니다. SQLSweet16!, 에피소드 3: 병렬 삽입 ... 고르다
    성능 SQL Server 2016을 사용하면 테이블의 개별 파티션에서 TRUNCATE 작업을 수행하여 이전 파티션을 보관할 수 있습니다. SQLSweet16!, 에피소드 5: 선택한 파티션 TRUNCATE
    성능 SQL Server 2016은 필요에 따라 메모리 내 최적화 데이터베이스 작업자 풀의 크기를 동적으로 조정합니다. SQL 2016 - 더 빠르게 실행됩니다. 메모리 내 최적화 데이터베이스 작업자 풀
    Tempdb 할당은 tempdb이고 사용자 데이터베이스는 균일한 전체 익스텐트 사용 tempdb의 파일 증가는 모든 파일에 대해 동시에 발생합니다. SQL 2016 - 더 빠르게 실행: TEMPDB 및 사용자 데이터베이스에 대한 -T1117 및 -T1118 변경 내용
    Tempdb 데이터베이스 엔진 설정은 tempdb 데이터 파일 수를 자동으로 계산합니다. SQL 2016 - 더 빠르게 실행: 자동 TEMPDB 구성
    스토리지 데이터베이스 엔진은 트랜잭션 로그 파일 초기화에 0x00 대신 0xC0 스탬프를 사용합니다. SQL 2016 - 더 빠르게 실행됩니다. LDF 스탬프
    스토리지 대규모 메모리 서버 및 쓰기가 많은 환경의 경우 간접 검사점이 더 잘 수행됩니다. SQL 2016 - 더 빠르게 실행: 간접 검사점 기본값
    스토리지 높은 트랜잭션 비율은 여러 로그 작성기가 로그 캐시를 트랜잭션 로그로 플러시하는 이점을 활용할 수 있습니다. SQL 2016 - 더 빠르게 실행됩니다. 여러 로그 기록기 작업자
    백업 및 복원 MAXTRANSFERSIZE를 65536보다 크게 지정하는 경우 TDE를 사용하여 암호화된 데이터베이스에 대해 백업을 압축할 수 있습니다. SQLSweet16!, 에피소드 1: TDE 사용 데이터베이스에 대한 백업 압축
    SQL OS 메모리 개체 경합을 줄이기 위해 메모리 개체를 동적으로 분할합니다. SQL 2016 - 더 빠르게 실행됩니다. 동적 메모리 개체(CMemThread) 분할
    SQL OS SQL Server 2016은 모든 작업자가 공정한 대우를 받고 확장성을 개선할 수 있도록 작업자의 양자 사용 패턴을 모니터링합니다. SQL 2016 - 더 빠르게 실행됨: 업데이트된 일정 알고리즘
    SQL OS SQL Server 2016은 하드웨어 레이아웃을 심문하고 NUMA 노드당 8개 이상의 CPU를 보고하는 시스템에서 소프트 NUMA를 자동으로 구성합니다. 분할은 확장성 및 성능 향상을 위해 데이터베이스 엔진 전체에서 다양한 조정을 트리거합니다. SQL 2016 - 더 빠르게 실행됩니다. 자동 소프트 NUMA
    DBCC CHECK DBCC CHECK 명령에서 사용하는 리소스를 관리하려면 MAXDOP를 지정합니다. SQLSweet16!, 에피소드 6: MAXDOP를 사용하는 DBCC CHECKDB
    DBCC CHECK DBCC CHECK는 경합이 적고 고급 미리 읽기 기능이 있는 향상된 페이지 검색 알고리즘을 사용합니다. SQL 2016 - 더 빠르게 실행됩니다. DBCC 크기가 7배 향상되었습니다.
    DBCC CHECK DBCC CHECK 명령은 SQL Server가 특수 데이터 형식 및 인덱스를 평가하는 데 시간이 오래 소요됩니다. 이러한 검사는 EXTENDED_LOGICAL_CHECKS 옵션으로 이동되었습니다. SQL 2016 - 더 빠르게 실행됩니다. DBCC 확장 검사
    코드 페이지 SQL Server의 테이블에 UTF-8 데이터를 로드하도록 BULK INSERT 또는 bcp 유틸리티가 향상되었습니다. SQLSweet16!, 에피소드 10: "유리를 먹을 수 있지만 데이터베이스에 로드할 수 있나요?
    공간 SQL Server 2016은 많은 공간 메서드에 대해 T-SQL을 실행하는 동안 PInvoke 및 PUnInvoke 작업을 제거합니다. SQL 2016 - 더 빠르게 실행됩니다. 네이티브 공간 구현
    공간 SQL Server 2016은 네이티브 공간 유효성 검사를 사용하여 공간 데이터를 사용하는 TVP의 확장성을 향상시킵니다. SQL 2016 - 더 빠르게 실행됩니다. 공간 열이 있는 TVP
    공간 네이티브 및 TVP 공간 개선을 통해 SQL Server는 공간 데이터의 인덱스 생성 및 공간 분할을 최적화할 수 있습니다. SQL 2016 - 더 빠르게 실행됩니다. 공간 인덱스가 더 빠르게 빌드됩니다.
    MSDTC SQL Server 2016은 필요에 따라 MSDTC를 동적으로 시작하여 필요할 때까지 리소스를 다른 활동에 사용할 수 있도록 합니다. SQL 2016 - 주문형 MSDTC 시작 활용
    XEvent 이벤트의 빠른 렌더링을 위해 컨텍스트 전환, 메모리 할당 및 기타 측면을 줄이기 위해 XEvent Linq 공급자 논리를 다양하게 변경합니다. SQL 2016 - 더 빠르게 실행됩니다. XEvent Linq Reader

    표 4. CU에 포함된 중요한 수정 사항

    증상 열의 설명을 검토하고 해당 환경의 필수 업데이트 열에 필요한 업데이트(특정 수정 사항이 포함된 최신 업데이트)를 적용합니다. 기술 자료 문서를 검토하여 해당 문제에 대한 자세한 내용을 확인할 수 있습니다. 이러한 권장 사항은 문서 또는 이 표에서 명시적으로 설명되지 않는 한 다른 추적 플래그를 시작 매개 변수로 사용하도록 설정할 필요가 없습니다. 이러한 수정 사항을 포함하는 최신 CU 또는 서비스 팩을 적용하는 것만으로도 이점을 얻을 수 있습니다.

    필수 업데이트 열의 CU 이름은 이 문제를 해결하는 SQL Server의 첫 번째 CU를 제공합니다. 누적 업데이트에는 이전 SQL Server 업데이트 릴리스와 함께 포함된 모든 핫픽스 및 모든 업데이트가 포함됩니다. SQL Server 증분 서비스 모델에 대한 업데이트에서 설명한 대로 설명된 문제를 해결하거나 방지하기 위해 지속적인 자동 관리 주기에 최신 누적 업데이트를 설치하는 것이 좋습니다. 또한 SQL Server 2017 부터 서비스 팩을 더 이상 사용할 수 없도록 SQL Server 용 최신 서비스 모델이 도입되었습니다.

    적용 가능한 버전 영역 또는 구성 요소 해결된 문제에 대한 설명 권장 업데이트
    SQL Server 2016SQL Server 2017 백업 및 복원 기본값이 아닌 MAXTRANSFERSIZE를 사용하는 경우 과거에 DEK를 암호화하는 데 사용된 이전 인증서 복사본을 찾으면 TDE 사용 데이터베이스의 로그 백업이 실패하고 오류 33111이 간헐적으로 반환됩니다. 해결 방법: SQL Server에서 TDE 암호화 데이터베이스를 백업할 때 오류 33111 및 3013
    SQL Server 2017 누적 업데이트 2
    SQL Server 2016 SP1용 누적 업데이트 6
    SQL Server 2016의 누적 업데이트 9
    SQL Server 2016SQL Server 2017 백업 및 복원 SQL Server에서 TDE 압축 백업이 느리게 완료되도록 RESTORE HEADERONLY 문 수정: SQL Server에서 TDE 압축 백업이 느리게 완료되도록 RESTORE HEADERONLY 문
    SQL Server 2017용 누적 업데이트 8
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2016 백업 및 복원 TDE 사용 데이터베이스에서 INIT 및 COMPRESSION 옵션을 사용하는 경우 백업 파일을 압축하지 못 함 해결 방법: SQL Server 2016의 TDE 지원 데이터베이스에서 INIT 및 COMPRESSION 옵션을 사용하는 경우 백업 파일을 압축하지 못 함
    SQL Server 2016 RTM용 누적 업데이트 7
    SQL Server 2016 SP1용 CU 4
    SQL Server 2016 백업 및 복원 SQL Server에서 대규모 TDE 암호화 데이터베이스를 백업할 때 어설션 실패
    SQL Server 2016 SP1용 누적 업데이트 4
    SQL Server 2016 백업 및 복원 TDE 사용 데이터베이스에서 압축 및 체크섬을 사용하여 백업을 수행하면 복원이 실패합니다. 해결 방법: SQL Server 2016에서 TDE 사용 데이터베이스에서 압축 및 체크섬을 사용하여 백업을 수행하면 복원이 실패합니다.
    SQL Server 2016 RTM용 누적 업데이트 7
    SQL Server 2016 SP1용 누적 업데이트 4
    SQL Server 2016 백업 및 복원 SQL Server의 대규모 TDE 암호화 데이터베이스에 대해 여러 파일에서 압축된 백업을 복원하려고 할 때 오류 9004 해결 방법: 대규모 TDE 암호화를 위해 여러 파일에서 압축된 백업을 복원하려고 할 때 오류 9004
    SQL Server 2016 RTM용 누적 업데이트 7
    SQL Server 2016SQL Server 2017 백업 및 복원 SQL Server의 4K 섹터에서 압축을 사용하여 백업을 복원할 때 복원 성능 저하 KB4088193 - 수정: SQL Server에서 4K 섹터 크기의 디스크에서 압축된 백업을 복원할 때 복원 성능 저하
    SQL Server 2016 SP1용 누적 업데이트 9
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2017용 누적 업데이트 7
    SQL Server 2016SQL Server 2017 백업 및 복원 [VDI] VDI 클라이언트를 사용할 때 TDE 압축 백업 복원에 실패 SQL Server 2017용 누적 업데이트 7
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2016 SP1용 누적 업데이트 9
    SQL Server 2016SQL Server 2017 백업 및 복원 [VDI] VDI 인터페이스를 통해 백업 압축된 TDE 사용 데이터베이스 복원이 실패하고 OS 오류 38을 반환합니다.
    SQL Server 2017용 누적 업데이트 8 [VSTS 버그 # 10936552]
    SQL Server 2016 SP2 RTM [VSTS 버그 # 10698847]
    SQL Server 2016SQL Server 2017 백업 및 복원 [VSS] SQL Server에서 VSS 기반 애플리케이션을 통한 가용성 데이터베이스 백업이 실패할 수 있음 해결 방법: SQL Server에서 VSS 기반 애플리케이션을 통한 가용성 데이터베이스 백업이 실패할 수 있음
    SQL Server 2017용 누적 업데이트 1
    SQL Server 2016 RTM용 누적 업데이트 9
    SQL Server 2016 SP1용 누적 업데이트 5
    SQL Server 2014 SP2용 누적 업데이트 8
    SQL Server 2016SQL Server 2017 백업 및 복원 암호화 키가 SQL Server의 EKM 공급자에 저장된 경우 TDE 사용 백업 및 복원 속도가 느립니다. 암호화 키가 EKM에 저장된 경우 TDE 사용 백업 및 복원 속도가 느림
    SQL Server 2017용 누적 업데이트 8
    SQL Server 2016 서비스 팩 2용 누적 업데이트 1
    SQL Server 2016 서비스 팩 1용 누적 업데이트 9
    SQL Server 2016SQL Server 2017 Always On AG Columnstore 비클러스터형 인덱스 검색을 사용하여 데이터를 검색하는 쿼리는 더 오래 걸립니다. 해결 방법: 비클러스터형 인덱스 검색을 사용하는 데이터 검색 쿼리는 SQL Server에서 훨씬 더 오래 걸립니다.
    SQL Server 2017 누적 업데이트 2
    SQL Server 2016 서비스 팩 1용 누적 업데이트 6
    SQL Server 2016의 누적 업데이트 9
    SQL Server 2016SQL Server 2017 Always On AG 힙 테이블을 포함하는 가용성 그룹의 보조 복제본에서 병렬 다시 실행은 SQL Server를 실행하는 서버 또는 런타임 어설션 덤프를 생성하고 액세스 위반 오류를 반환합니다. 수정: 힙 테이블을 포함하는 가용성 그룹의 보조 복제본에서 병렬 다시 실행은 런타임 어설션 덤프를 생성하거나 SQL Server가 액세스 위반 오류와 충돌합니다.
    SQL Server 2016 SP1용 누적 업데이트 9
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2017 누적 업데이트 6
    SQL Server 2016 Always On AG SQL Server Always On 가용성 그룹의 보조 복제본에서 병렬 다시 실행을 사용할 때 어설션이 발생합니다. 해결 방법: SQL Server Always On 가용성 그룹의 보조 복제본에서 병렬 다시 실행을 사용할 때 어설션이 발생합니다.
    SQL Server 2016의 누적 업데이트 3
    SQL Server 2016SQL Server 2017 Always On AG 읽기 쿼리를 처리할 때 Always On AG의 성능이 저하됩니다. 해결 방법: SQL Server에서 읽기 쿼리를 처리할 때 Always On AG 속도가 느림
    SQL Server 2017용 누적 업데이트 8
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2016 SP1용 누적 업데이트 9
    SQL Server 2017 Always On AG SQL Server on Linux의 가용성 그룹에 대한 장애 조치(failover) 기간을 줄이기 위한 개선 사항 SQL Server on Linux의 가용성 그룹에 대한 장애 조치(failover) 기간을 줄이기 위한 개선 사항
    SQL Server 2017용 누적 업데이트 8
    SQL Server 2017 Always On AG SQL Server의 Pacemaker 클러스터에서 Always On 가용성 그룹에 대한 향상된 기능 SQL Server의 Pacemaker 클러스터에서 Always On 가용성 그룹에 대한 향상된 기능
    SQL Server 2017용 누적 업데이트 8
    SQL Server 2016 메모리 병렬 다시 실행으로 인해 높은 메모리 사용량 발생 수정: 병렬 다시 실행은 SQL Server 2014 또는 이전 버전과 비교할 때 SQL Server 2016에서 높은 메모리 사용량을 발생합니다.
    SQL Server 2016 SP1용 누적 업데이트 3
    SQL Server 2016SQL Server 2017 메모리 sp_execute_external_script 및 DMV sys.dm_exec_cached_plans 메모리 누수 발생 해결 방법: SQL Server 2017 및 2016에서 시스템 저장 프로시저 sp_execute_external_script 및 DMV sys.dm_exec_cached_plans 메모리 누수 발생
    SQL Server 2017용 누적 업데이트 4
    SQL Server 2016 SP1용 누적 업데이트 8
    SQL Server 2016SQL Server 2017 메모리 SQL Server 프로세스의 가상 주소 공간이 낮을 때 메모리 부족 오류 SQL Server 프로세스의 가상 주소 공간이 SQL Server에서 부족한 경우 메모리 부족 오류
    SQL Server 2017용 누적 업데이트 4
    SQL Server 2016 SP1용 누적 업데이트 8
    SQL Server 2016 메모리 SQL Server에서 Azure Storage를 사용할 때 메모리 누수 발생 SQL Server 2014 또는 2016에서 Azure Storage를 사용할 때 메모리 누수 발생
    SQL Server 2016 RTM용 누적 업데이트 5
    SQL Server 2016 SP1용 누적 업데이트 2
    SQL Server 2016용 누적 업데이트 2
    SQL Server 2016SQL Server 2017 메모리 내 OLTP 메모리 내 최적화 파일 그룹에 대해 큰 디스크 검사점 사용이 발생합니다. 해결 방법: 메모리 내외 워크로드가 많은 동안 메모리 내 최적화 파일 그룹에 대해 큰 디스크 검사점 사용량이 발생합니다.
    SQL Server 2017 누적 업데이트 6
    SQL Server 2016 SP1용 누적 업데이트 8
    SQL Server 2016의 누적 업데이트 1
    SQL Server 2016 메모리 내 OLTP 메모리 최적화 테이블에 데이터를 삽입할 때 검사점 파일이 과도하게 증가합니다. 해결 방법: SQL Server 2016에서 메모리 최적화 테이블에 데이터를 삽입하면 검사점 파일이 과도하게 증가합니다.
    SQL Server 2016 SP1용 누적 업데이트 2
    SQL Server 2016용 누적 업데이트 4
    SQL Server 2016SQL Server 2017 메모리 내 OLTP 메모리 최적화 테이블이 포함된 경우 데이터베이스 복구에 오랜 시간이 걸립니다. SQL Server 2017 및 2016에서 메모리 최적화 테이블이 있는 데이터베이스를 복구하는 데 시간이 오래 걸립니다.
    SQL Server 2017용 누적 업데이트 4
    SQL Server 2016 SP1용 누적 업데이트 7
    SQL Server 2016SQL Server 2017 tempdb PFS 페이지 라운드 로빈 알고리즘 개선 SQL Server 2016의 PFS 페이지 라운드 로빈 알고리즘 개선
    SQL Server 2017용 누적 업데이트 7
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2016 SP1용 누적 업데이트 9
    SQL Server 2016SQL Server 2017 tempdb 성능 문제는 TempDB(sys.sysobjvalues 및 sys.sysseobjvalues)에서 PAGELATCH_EX 및 PAGELATCH_SH 대기 형식으로 발생합니다. 성능 문제는 PAGELATCH_EX 및 PAGELATCH_SH 대기 형식으로 발생합니다.
    SQL Server 2016 서비스 팩 2용 누적 업데이트 1
    SQL Server 2016 서비스 팩 1용 누적 업데이트 9
    SQL Server 2016SQL Server 2017 tempdb 명명된 제약 조건이 있는 무거운 tempdb 경합Temp 테이블 변경에는 임시 테이블의 동기 삭제가 필요합니다. SQL Server 2016 또는 2017에서 tempdb 경합이 심합니다.
    SQL Server 2017용 누적 업데이트 5
    SQL Server 2016 SP1용 누적 업데이트 8
    SQL Server 2017 tempdb 임시 개체를 제거할 때 경합 PAGELATCH_EX(sys.sysobjvalues) 해결 방법: SQL Server에서 임시 개체를 제거할 때 경합 PAGELATCH_EX
    SQL Server 2017용 누적 업데이트 5
    SQL Server 2016 tempdb sys.sysobjvalues에서 PAGELATCH_EX 경합 증가 해결 방법: SQL Server 2016에서 sys.sysobjvalues의 PAGELATCH_EX 경합 증가
    SQL Server 2016 RTM용 누적 업데이트 6
    SQL Server 2016 서비스 팩 1용 누적 업데이트 2
    SQL Server 2016SQL Server 2017 tempdb tempdb 데이터베이스의 간접 검사점으로 인해 "생성하지 않는 스케줄러" 오류가 발생합니다. 해결 방법: tempdb 데이터베이스의 간접 검사점으로 인해 SQL Server 2017 및 2016에서 "비수익 스케줄러" 오류가 발생합니다.
    SQL Server 2017용 누적 업데이트 1
    SQL Server 2016 서비스 팩 1용 누적 업데이트 5
    SQL Server 2016용 누적 업데이트 8
    SQL Server 2016SQL Server 2017 tempdb 빈번하고 짧은 트랜잭션을 많이 사용하는 워크로드는 더 많은 CPU를 사용할 수 있습니다. SQL Server 2017 및 2016에서 빈번하고 짧은 트랜잭션을 많이 활용하는 워크로드는 SQL Server 2014보다 더 많은 CPU를 사용할 수 있습니다.
    SQL Server 2017용 누적 업데이트 4
    SQL Server 2016 SP1용 누적 업데이트 2
    SQL Server 2016SQL Server 2017 트랜잭션 로그 중요한 로그 증가를 위한 충분한 디스크 공간이 없는 경우 오류 9002 KB4087406 - 수정: SQL Server 2014, 2016 및 2017에서 중요한 로그 증가를 위한 충분한 디스크 공간이 없는 경우 오류 9002
    SQL Server 2017용 누적 업데이트 5
    SQL Server 2016 SP2용 누적 업데이트 1
    SQL Server 2016 SP1용 누적 업데이트 8
    SQL Server 2014 SP2용 누적 업데이트 11
    SQL Server 2016 보안 캐시 높은 CPU 사용량으로 인해 SQL Server 2016에서 SECURITY_CACHE 및 CMED_HASH_SET SQLSweet16에 대한 높은 스핀 잠금 경합의 성능 문제가 발생합니다., 에피소드 8: SQL Server 2016 CU2(누적 업데이트 2)가 동시 워크로드의 성능을 향상시킬 수 있는 방법 KB3195888 - 수정: CPU 사용량이 높으면 SQL Server 2016 및 2017에서 성능 문제가 발생합니다.
    SQL Server 2016용 누적 업데이트 2
    SQL Server 2017 쿼리 저장소 쿼리 저장소 런타임 통계를 수집할 때 액세스 위반이 발생합니다. 쿼리 저장소 SQL Server 2017에서 런타임 통계를 수집할 때 액세스 위반
    SQL Server 2017용 누적 업데이트 5
    SQL Server 2016 쿼리 저장소 Enterprise 및 Developer 버전 이외의 버전에서 자동 데이터 정리가 실패하는 쿼리 저장소 SQL Server 2016 Enterprise 및 Developer 버전 이외의 버전에서 자동 데이터 정리가 실패하는 쿼리 저장소
    SQL Server 2016의 누적 업데이트 1
    SQL Server 2016 쿼리 저장소 쿼리 저장소 사용하도록 설정된 경우 SQL Server의 성능 저하 KB4340759 - 수정: 쿼리 저장소 사용하도록 설정된 경우 SQL Server 2016의 성능 저하
    SQL Server 2016 SP2용 누적 업데이트 2

    이 표는 SQL Server 2017이 릴리스된 후 누적 업데이트에서 릴리스된 모든 주요 개선 사항, 권장 사항 및 코드 변경 내용을 컴파일한 것입니다. 증상 열의 설명을 검토하고 해당 환경의 필수 업데이트 열에 필요한 업데이트(특정 수정 사항이 포함된 최신 업데이트)를 적용합니다. 나열된 기술 자료 문서를 검토하여 해당 문제에 대한 자세한 내용을 확인할 수 있습니다.

    이러한 권장 사항은 문서 또는 이 표에서 명시적으로 설명되지 않는 한 다른 추적 플래그를 시작 매개 변수로 사용하도록 설정할 필요가 없습니다. 이러한 수정 사항을 포함하는 최신 누적 업데이트 또는 서비스 팩을 적용하는 것만으로도 이점을 얻을 수 있습니다. SQL Server on Linux에서 Always On 가용성 그룹을 사용하는 경우 이 업데이트에서 몇 가지 개선 사항이 제공되었으므로 SQL Server 2017을 누적 업데이트 8 이상으로 업그레이드합니다. 필수 업데이트 열의 CU 이름은 이 문제를 해결하는 SQL Server의 첫 번째 누적 업데이트를 제공합니다. 누적 업데이트에는 이전 SQL Server 업데이트 릴리스에 포함된 모든 핫픽스 및 모든 업데이트가 포함됩니다. SQL Server 증분 서비스 모델에 대한 업데이트에서 설명한 대로 이제 설명된 문제를 해결하거나 방지하기 위해 지속적인 사전 예방 주기에 최신 누적 업데이트를 설치하는 것이 좋습니다. 또한 SQL Server 2017 부터 서비스 팩을 더 이상 사용할 수 없도록 SQL Server 용 최신 서비스 모델이 도입되었습니다.

    변경 또는 개선 요약 자세한 내용 및 참조
    SQL 및 OS: Linux에서 SQL Server를 배포할 때 OS 및 SQL Server에 대한 다양한 모범 사례 권장 사항 검토 Linux의 SQL Server에 대한 성능 모범 사례 및 구성 지침
    SQL 에이전트 개선: SQL Server 에이전트 작업은 모든 데이터베이스가 복구될 때까지 기다리지 않고 시작할 수 있습니다. SQL Server 에이전트 작업은 Linux의 SQL Server 2017에서 모든 데이터베이스가 복구되는 것을 기다리지 않고 시작할 수 있습니다.
    SQL Server 2017용 누적 업데이트 9
    스토리지 개선: SQL Server 2017에서 "강제 플러시" 메커니즘 사용 Linux의 SQL Server 2017에서 강제 플러시 메커니즘 사용
    SQL Server 2017 누적 업데이트 6
    스토리지 개선: 마스터 데이터베이스 및 오류 로그 파일을 다른 위치로 이동 KB4053439 - 개선 사항: Linux의 SQL Server 2017에서 마스터 데이터베이스 및 오류 로그 파일을 다른 위치로 이동
    SQL Server 2017용 누적 업데이트 4
    AG 개선 사항: SQL Server의 Pacemaker 클러스터에서 Always On 가용성 그룹에 대한 개선 사항 KB4339875 - SQL Server의 Pacemaker 클러스터에서 Always On 가용성 그룹에 대한 개선 사항
    SQL Server 2017용 누적 업데이트 8
    메모리 개선: SQL Server 설치 또는 시작을 위한 최소 메모리 제한은 2GB로 설정됩니다. KB4052969 - 수정: SQL Server 2017을 설치하거나 시작하려면 최소 메모리 제한이 2GB로 설정됩니다.
    SQL Server 2017 누적 업데이트 2
    메모리 수정: TF 834를 사용하도록 설정한 후 메모리 진입 단계가 너무 깁니다. KB4075203 - 수정: Linux의 SQL Server 2017에서 TF 834를 사용하도록 설정한 후 메모리 증가 단계가 너무 깁니다.
    SQL Server 2017용 누적 업데이트 4
    일정 수정: SQL Server 2017의 Windows 및 Linux 스케줄러 매핑 간에 이식성과 성능이 다릅니다. KB4043455 - 수정: SQL Server 2017의 Windows 및 Linux 스케줄러 매핑 간에 이식성과 성능이 다릅니다.
    SQL Server 2017용 누적 업데이트 1
    AD 인증 수정: 부모 도메인에 속한 사용자를 기반으로 로그인을 만들 수 없습니다. KB4073670 - 수정: Linux의 SQL Server 2017에서 부모 도메인에 속한 사용자를 기반으로 로그인을 만들 수 없습니다.
    SQL Server 2017용 누적 업데이트 4
    AD 인증 업데이트: 지리적으로 큰 네트워크에서 연결할 수 있는 KDC를 제한하여 SQL Server 성능 향상 KB4463314 - 업데이트는 지리적으로 큰 네트워크에서 연결할 수 있는 KDC를 제한하여 SQL 서버 성능을 향상시킵니다.
    SQL Server 2017용 누적 업데이트 11
    AD 인증 수정: 타사 Active Directory 공급자를 사용할 때 SQL Server가 충돌합니다. KB4466962 - 수정: 타사 Active Directory 공급자를 사용할 때 SQL Server 2017이 충돌합니다.
    SQL Server 2017용 누적 업데이트 12
    TSQL 수정: SQL Server를 다시 시작한 후 NEWSEQUENTIALID 함수가 중복 GUID를 생성합니다. KB4078097 - 수정: LINux에서 SQL Server 2017을 다시 시작한 후 NEWSEQUENTIALID 함수가 중복 GUID를 생성합니다.
    SQL Server 2017의 누적 업데이트 4
    연결 수정: TCP 프로토콜 연결을 사용할 때 예기치 않은 메모리 사용 KB4073045 - 수정: Linux의 SQL Server 2017에 TCP 프로토콜 연결이 사용될 때 예기치 않은 메모리 사용
    SQL Server 2017용 누적 업데이트 4
    연결 수정: 시작 시 IPv6을 사용하지 않도록 설정하면 이름 확인 오류가 발생합니다. KB4053392 - 수정: Linux의 SQL Server 2017 시작 시 IPv6을 사용하지 않도록 설정하면 이름 확인 오류가 발생합니다.
    SQL Server 2017 누적 업데이트 2
    연결 수정: SQL Server는 mssql-conf 스크립트로 지정된 기본이 아닌 IP 주소를 수신하지 않습니다. KB4053393 - 수정: SQL Server 2017 on Linux에서 mssql-conf 스크립트로 지정된 기본이 아닌 IP 주소를 수신 대기하지 않음
    SQL Server 2017 누적 업데이트 2
    설치 수정: CU를 적용할 때 스크립트 업그레이드 실패 SQL Server 2017 CU4 이상을 업그레이드하고 Linux에서 SQL 에이전트를 사용하도록 설정하지 않을 때 발생하는 오류
    SQL Server 2017 누적 업데이트 6
    데이터베이스 메일 수정: 기본이 아닌 TCP 포트를 사용하는 경우 데이터베이스 메일 SQL Server에 연결할 수 없습니다. KB4100873 - 수정: 기본이 아닌 TCP 포트를 사용하는 경우 데이터베이스 메일 Linux의 SQL Server 2017에 연결할 수 없습니다.
    SQL Server 2017 누적 업데이트 6
    컨테이너 수정: "docker stop" 명령을 사용하여 SQL Server Linux Docker 컨테이너를 중지할 수 없습니다. KB4093805 - 수정: "docker stop" 명령을 사용하여 SQL Server Linux Docker 컨테이너를 중지할 수 없습니다.
    SQL Server 2017용 누적 업데이트 5
    컨테이너 수정: Linux Docker 컨테이너에서 SQL Server를 실행할 때 메모리 부족 오류 KB4347055 - 수정: Linux Docker 컨테이너에서 SQL Server 2017을 실행할 때 메모리 부족 오류
    SQL Server 2017의 누적 업데이트 10
    AG: Pacemaker 패키지 1.1.18-11.el7 이상을 사용하는 경우 start-failure-is-fatal 속성을 조정합니다. KB4229789 - SQL Server 2017용 누적 업데이트 7
    Pacemaker 알림 섹션 참조
    AG 수정: 작업 시간이 초과되면 Pacemaker가 리소스 에이전트 프로세스를 종료할 수 있습니다. KB4460203 - 수정: SQL Server 2017 Always On 가용성 그룹에서 작업 시간이 초과되면 Pacemaker가 리소스 에이전트 프로세스를 종료할 수 있음
    SQL Server 2017용 누적 업데이트 11
    AG 수정: 두 개의 SQL Server 인스턴스는 가용성 그룹의 주 복제본입니다. KB4316791 - 수정: 두 개의 SQL Server 인스턴스는 SQL Server에서 가용성 그룹의 주 복제본입니다.
    SQL Server 2017용 누적 업데이트 8
    AG 수정: Always On 가용성 그룹을 사용할 때 불필요한 장애 조치(failover) KB4056922 - 수정: Linux의 SQL Server 2017에서 Always On 가용성 그룹을 사용하는 경우 불필요한 장애 조치(failover)
    SQL Server 2017용 누적 업데이트 3
    AG 수정: Pacemaker는 Always On AG의 기존 주 복제본을 강등하고 새 복제본을 승격하지 않습니다. KB4076982 - 수정: Pacemaker는 Linux의 SQL Server 2017에서 Always On AG의 기존 주 복제본을 강등하고 새 복제본을 승격하지 않습니다.
    SQL Server 2017의 누적 업데이트 4
    AG 수정: Pacemaker는 Always On AG를 사용할 때 동기화되지 않은 복제본을 주 복제본으로 승격합니다. KB4091722 - 수정: Linux의 SQL Server 2017에서 Always On AG를 사용하는 경우 Pacemaker는 동기화되지 않은 복제본을 주 복제본으로 승격합니다.
    SQL Server 2017용 누적 업데이트 5
    AG 수정: Always On AG를 사용할 때 로컬 복제본을 주 복제본으로 승격하지 못함 KB4230542 - 수정: SQL Server 2017에서 Always On AG를 사용할 때 로컬 복제본을 주 복제본으로 승격하지 못함
    SQL Server 2017용 누적 업데이트 7
    AG 수정: 가용성 그룹에 속한 데이터베이스의 시작 시간이 초과되었습니다. KB4316790 - 수정: SQL Server on Linux에서 가용성 그룹에 속한 데이터베이스의 시작 시간이 초과되었습니다.
    SQL Server 2017용 누적 업데이트 8
    AG 수정: Pacemaker에서 SQL Server 장애 조치(failover) 클러스터 인스턴스 또는 Always On AG를 관리할 때 불필요한 장애 조치(failover)가 발생합니다. KB4316793 - 해결 방법: Pacemaker에서 SQL Server 2017 장애 조치(failover) 클러스터 인스턴스 또는 Always On AG를 관리할 때 불필요한 장애 조치(failover)가 발생합니다.
    SQL Server 2017용 누적 업데이트 8