메모리 최적화 테이블을 사용하기 위한 요구 사항

적용 대상:SQL Server

이 문서에서는 SQL Server에서 메모리 내 기능을 채택하기 위한 요구 사항을 설명합니다.

요구 사항

SQL Server 2022: 하드웨어 및 소프트웨어 요구 사항 외에도 메모리 내 OLTP를 사용하기 위한 요구 사항은 다음과 같습니다.

  • SQL Server 2016(13.x) SP 1 이상 버전( 모든 버전) SQL Server 2014(12.x) 및 SQL Server 2016(13.x) RTM(SP1 이전)의 경우 Enterprise, Developer 또는 Evaluation 버전이 필요합니다.

  • 메모리 내 OLTP에는 64비트 버전의 SQL Server가 필요합니다.

  • SQL Server에는 메모리 최적화 테이블 및 인덱스에 데이터를 저장할 충분한 메모리와 온라인 워크로드를 지원하기 위한 추가 메모리가 필요합니다. 자세한 내용은 메모리 최적화 테이블에 대한 메모리 요구 사항 추정을 참조 하세요.

  • VM(가상 머신)에서 SQL Server를 실행하는 경우 메모리 최적화 테이블 및 인덱스에 필요한 메모리를 지원하기 위해 VM에 할당된 메모리가 충분한지 확인합니다. VM 호스트 애플리케이션에 따라 VM에 대한 메모리 할당을 보장하는 구성 옵션을 메모리 예약 또는 동적 메모리를 사용하는 경우 최소 RAM이라고 할 수 있습니다. 이러한 설정이 SQL Server의 데이터베이스 요구 사항에 충분한지 확인합니다.

  • 지속성 메모리 최적화 테이블 크기의 2배에 달하는 사용 가능한 디스크 공간입니다.

  • 프로세서는 메모리 내 OLTP를 사용하는 명령을 cmpxchg16b 지원해야 합니다. 모든 최신 64비트 프로세서가 지원 cmpxchg16b됩니다.

    가상 머신을 사용하고 SQL Server에서 이전 프로세서로 인한 오류를 표시하는 경우 VM 호스트 애플리케이션에 허용할 cmpxchg16b구성 옵션이 있는지 확인합니다. 그렇지 않은 경우 구성 옵션을 수정할 필요 없이 지원하는 cmpxchg16b Hyper-V를 사용할 수 있습니다.

  • 메모리 내 OLTP는 데이터베이스 엔진 서비스의 일부로 설치됩니다.

    보고서 생성(테이블 또는 저장 프로시저를 메모리 내 OLTP로 이식해야 하는지 확인) 및 SQL Server Management Studio(SQL Server Management Studio 개체 탐색기 통해 메모리 내 OLTP를 관리하려면)를 설치하려면 SSMS(SQL Server Management Studio)를 다운로드합니다.

참고 항목

메모리 내 OLTP 사용에 대한 중요 정보

  • SQL Server 2016(13.x) 이상 버전에서는 사용 가능한 메모리 이외의 메모리 최적화 테이블의 크기에 제한이 없습니다.

  • SQL Server 2014(12.x)에서 데이터베이스의 모든 지속성 테이블의 총 메모리 내 크기는 250GB를 초과하면 안 됩니다. 자세한 내용은 메모리 최적화 테이블에 대한 메모리 요구 사항 추정을 참조 하세요.

참고 항목

SQL Server 2016(13.x) SP 1부터 Standard 및 Express 버전은 메모리 내 OLTP를 지원하지만 지정된 데이터베이스의 메모리 최적화 테이블에 사용할 수 있는 메모리 양에 할당량을 적용합니다. Standard 버전에서는 데이터베이스당 32GB입니다. Express 버전에서는 데이터베이스당 352MB입니다.

  • 메모리 최적화 테이블을 사용하여 하나 이상의 데이터베이스를 만드는 경우 SQL Server 서비스 시작 계정에 SE_MANAGE_VOLUME_NAME 사용자 권한을 부여하여 IFI(인스턴트 파일 초기화)를 사용하도록 설정해야 합니다. IFI가 없으면 메모리 최적화 스토리지 파일(데이터 및 델타 파일)이 생성 시 초기화되어 워크로드 성능에 부정적인 영향을 미칠 수 있습니다. IFI를 사용하도록 설정하는 방법을 포함하여 IFI에 대한 자세한 내용은 데이터베이스 인스턴트 파일 초기화를 참조하세요.

  • 알려진 문제: 메모리 최적화 테이블이 있는 데이터베이스의 경우 복구 없이 트랜잭션 로그 백업을 수행하고 나중에 복구를 사용하여 트랜잭션 로그 복원을 실행하면 응답하지 않는 데이터베이스 복원 프로세스가 발생할 수 있습니다. 이 문제는 로그 전달 기능에도 영향을 줄 수 있습니다. 이 문제를 해결하기 위해 복원 프로세스를 시작하기 전에 SQL Server 인스턴스를 다시 시작할 수 있습니다.