SharePoint Server 2010 팜의 SQL Server 2008 모범 사례

 

적용 대상: SharePoint Server 2010

마지막으로 수정된 항목: 2016-11-30

이 문서에서는 Microsoft SharePoint Server 2010 환경에서 Microsoft SQL Server 2008을 구성하고 유지 관리하기 위한 모범 사례에 대해 설명합니다. 이러한 모범 사례는 적용되는 순서(SQL Server 2008 설치 및 구성, SharePoint Server 배포, 팜 유지 관리순)에 따라 제공됩니다.

이 문서는 SharePoint Server 모범 사례 문서 시리즈 중 하나입니다. 이 시리즈의 다른 문서를 보려면 모범 사례(SharePoint Server 2010)를 참조하십시오. SharePoint Server 2010 모범 사례에 대한 자세한 내용과 리소스는 모범 사례 리소스 센터(영문일 수 있음)(https://go.microsoft.com/fwlink/?linkid=220280&clcid=0x412)(영문일 수 있음)를 참조하십시오.

1. SQL Server 2008에 대해 전용 서버 사용

팜 작업 시 최적의 성능을 유지하려면 다른 팜 역할을 실행하지 않으며 다른 응용 프로그램용 데이터베이스를 호스팅하지 않는 전용 서버에 SQL Server 2008을 설치하는 것이 좋습니다. 단, 대규모 프로덕션 환경에는 적합하지 않은 독립 실행형 서버에 SharePoint Server 2010을 배포하는 경우만은 예외입니다.

참고

SQL Server 2008을 가상화하는 환경에서도 데이터베이스용으로 전용 서버를 사용하는 것이 좋습니다.

2. SharePoint Server 2010 배포 전에 특정 SQL Server 2008 설정 구성

일관성 있는 동작과 성능을 유지하려면 SharePoint Server 2010을 배포하기 전에 다음 옵션과 설정을 구성합니다.

  • SharePoint Server를 지원하는 SQL Server에서는 자동 통계 자동 작성을 사용하도록 설정하지 않습니다.

  • 단일 SQL Server 프로세스에서 각 요청을 처리하도록, SharePoint Server 2010 데이터베이스를 호스팅하는 SQL Server 인스턴스에 대해 MAXDOP(최대 병렬 처리 수준)를 1로 설정합니다.

    중요

    SharePoint Server 환경에서 다른 설정을 사용하는 경우에는 실행을 위해 최적 상태가 아닌 쿼리 계획이 선택되어 전반적인 성능이 저하됩니다.

  • 유지 관리의 편의성을 높이고 나중에 필요한 경우 데이터베이스를 쉽게 다시 배치하려면 팜의 각 데이터베이스 서버에 대해 SQL Server 연결 별칭을 구성합니다.

자세한 내용은 SQL Server 옵션 설정을 참조하십시오.

3. SharePoint Server 2010 배포 전에 데이터베이스 서버 강화

SharePoint Server 2010을 배포하기 전에 데이터베이스 서버를 계획 및 강화하는 것이 좋습니다. 여기에는 SharePoint Server 및 SQL Server의 데이터베이스 서버 역할 보호가 포함됩니다. 자세한 내용은 다음 항목을 참조하십시오.

4. 가용성과 성능을 높일 수 있도록 데이터베이스 서버 구성

웹 서버 및 응용 프로그램 서버와 마찬가지로, 데이터베이스 서버의 구성도 SharePoint Server 2010의 성능에 영향을 줍니다. 특정 데이터베이스의 경우 기타 특정 데이터베이스와 함께 배치하거나 별도로 배치해야 합니다. 자세한 내용은 다음 항목을 참조하십시오.

미러링을 사용하는 항상 사용 가능한 데이터베이스의 경우 데이터베이스 미러링 모범 사례 및 성능 고려 사항(영문일 수 있음)(https://go.microsoft.com/fwlink/?linkid=185119&clcid=0x412)(영문일 수 있음)의 모범 사례 지침을 참조하십시오.

5. 처리량과 관리 효율성을 최적화할 수 있도록 저장소 디자인

데이터베이스 서버의 여러 디스크에 데이터를 분산시키고 데이터의 우선 순위를 지정하는 것이 좋습니다. tempdb 데이터베이스, 콘텐츠 데이터베이스, 사용 현황 데이터베이스, 검색 데이터베이스 및 SQL Server 2008 트랜잭션 로그를 별도의 실제 하드 디스크에 배치하는 것이 이상적입니다. 다음 목록에는 데이터와 로그 우선 순위 지정 및 관리를 위한 최상의 방법 및 권장 사항이 나와 있습니다. 자세한 내용은 데이터베이스 구성을 참조하십시오.

  • 공동 작업 또는 업데이트를 많이 수행하는 사이트의 경우 다음과 같은 순위로 저장소를 배분합니다.

    1. 속도가 가장 빠른 디스크의 tempdb 데이터 파일과 트랜잭션 로그

    2. 콘텐츠 데이터베이스 트랜잭션 로그 파일

    3. 검색 데이터베이스(검색 관리 데이터베이스는 예외)

    4. 콘텐츠 데이터베이스 데이터 파일

  • 읽기를 많이 수행하는 포털 사이트에서는 다음과 같이 트랜잭션 로그보다 데이터 및 검색 로그의 우선 순위를 더 높게 지정합니다.

    1. 속도가 가장 빠른 디스크의 tempdb 데이터 파일과 트랜잭션 로그

    2. 콘텐츠 데이터베이스 데이터 파일

    3. 검색 데이터베이스(검색 관리 데이터베이스는 예외)

    4. 콘텐츠 데이터베이스 트랜잭션 로그 파일

  • 테스트 데이터 및 사용자 데이터의 경우, tempdb에 대한 불충분한 디스크 I/O로 인해 전체적인 팜 성능이 크게 저하될 수 있는 것으로 나타났습니다. 이 문제를 방지하려면 tempdb용으로 전용 디스크를 할당합니다.

  • 최상의 성능을 유지하려면 RAID 10 배열에 tempdb를 배치합니다. tempdb 데이터 파일의 수는 코어 CPU의 수와 같아야 하며, tempdb 데이터 파일은 같은 크기로 설정해야 합니다.

  • 데이터베이스 데이터와 트랜잭션 로그 파일을 여러 디스크에 분리합니다. 파일이 너무 작아서 전체 디스크나 스트라이프를 차지하기에 적당하지 않거나 디스크 공간이 부족하기 때문에 여러 파일이 디스크를 공유해야 하는 경우에는 사용 패턴이 서로 다른 여러 파일을 동일한 디스크에 배치하여 동시 액세스 요청을 최소화합니다.

  • 사용량이 많은 콘텐츠 데이터베이스의 경우 여러 데이터 파일을 사용하고 각각 자체 디스크에 배치합니다.

  • 관리 효율성을 높이려면 콘텐츠 데이터베이스 크기를 50GB로 제한합니다.

SQL Server 시스템의 성능과 작업 효율성을 최적으로 유지하려면 I/O 하위 시스템을 적절하게 구성해야 합니다. 자세한 내용은 Storage Top 10 Best Practices를 참조하십시오.

6. 데이터 및 로그 파일의 증가를 사전에 관리

다음 권장 사항을 고려하여 데이터 및 로그 파일의 증가를 사전에 관리하는 것이 좋습니다.

  • 가능한 경우 모든 데이터 파일 및 로그 파일을 예상되는 최종 크기까지 미리 늘리거나, 설정된 기간(예: 매월 또는 6개월마다)에 정기적으로 늘리거나, 저장소를 많이 사용하는 새 사이트를 롤아웃하기 전에(예: 파일 마이그레이션 중에) 늘립니다.

  • 데이터 및 로그 파일 저장 공간이 부족해지지 않도록, 문제 예방책으로 데이터베이스 자동 확장을 사용하도록 설정하는 것이 좋습니다. 다음 사항을 고려하십시오.

    중요

    자동 확장 사용과 관련된 성능 및 작업 문제를 고려해야 합니다. 자세한 내용은 SQL Server의 "자동 확장" 및 "자동 축소" 설정 고려 사항(https://go.microsoft.com/fwlink/?linkid=117750&clcid=0x412)을 참조하십시오.

    • 자동 확장의 기본 설정을 사용하지 말고 SQL Server 옵션 설정에 제공된 지침을 사용합니다.

    • 자동 확장 값은 고정된 MB 값이 아닌 비율로 설정합니다. 즉, 데이터베이스가 클수록 확장 증분 값도 커집니다.

      콘텐츠가 100MB씩 계속 늘어나며 자동 확장은 10MB로 설정되어 있는 경우를 가정해 보겠습니다. 초기 크기가 50GB인 새 문서 관리 사이트에 대해 많은 양의 데이터 저장소가 갑자기 필요한 경우 확장 단위를 10MB가 아닌 500MB로 늘릴 수 있습니다.

    • 관리되는 프로덕션 시스템의 경우에는 데이터베이스가 갑자기 커지는 경우에 대비하는 방법으로만 자동 확장을 고려해야 합니다. 즉, 자동 확장 옵션을 사용하여 일상적인 데이터 및 로그 증가를 관리해서는 안 됩니다.

  • 디스크에 최소한 25%의 사용 가능한 공간을 유지하여 증가 및 최대 사용 패턴을 허용합니다. 디스크를 RAID 배열에 추가하거나 추가 저장 용량을 할당하는 방식으로 증가율을 관리하는 경우 공간이 부족한 상황이 발생하지 않도록 하려면 디스크 크기를 주의 깊게 모니터링합니다.

7. 지속적인 SQL Server 저장소 및 성능 모니터링

SQL Server 저장소 및 성능을 지속적으로 모니터링하여 프로덕션 데이터베이스 서버에서 부하를 적절하게 처리하고 있는지 확인해야 합니다. 지속적인 모니터링을 수행하면 리소스 계획에 사용할 수 있는 벤치마킹을 설정할 수도 있습니다.

리소스 모니터링은 넓은 범위에서 수행해야 하며, SQL Server와 관련된 리소스로 모니터링을 제한해서는 안 됩니다. SQL Server를 실행하는 서버의 리소스 구성 요소인 CPU, 메모리, 캐시 적중률 및 I/O 하위 시스템을 추적하는 것도 중요합니다.

데이터베이스 서버의 구성 요소 중 하나 이상이 느려지거나 부하가 과도한 것처럼 보이면 현재 및 예상 작업량을 기반으로 적합한 전략을 분석합니다. 자세한 내용은 다음 항목을 참조하십시오.

8. 백업 압축을 통해 백업 속도를 높이고 파일 크기 줄이기

백업 압축은 모든 SharePoint 백업 속도를 높일 수 있으며 SQL Server 2008 Enterprise Edition 또는 SQL Server 2008 R2 Standard Edition에서 사용할 수 있습니다. 백업 스크립트에서 압축 옵션을 설정하거나 기본적으로 압축을 수행하도록 SQL Server가 실행되는 서버를 구성하면 데이터베이스 백업 및 전달되는 로그의 크기를 대폭 줄일 수 있습니다. 자세한 내용은 백업 압축(SQL Server)(https://go.microsoft.com/fwlink/?linkid=129381&clcid=0x412) 및 데이터 압축: 전략, 용량 계획 및 모범 사례(영문일 수 있음)(https://go.microsoft.com/fwlink/?linkid=223674&clcid=0x412)(영문일 수 있음)를 참조하십시오.

도움 주신 분

SharePoint Server 2010 콘텐츠 게시 팀에서는 이 문서 작성에 도움을 주신 다음 기고자 여러분에게 감사의 뜻을 전합니다.

  • Stephen Dillon(선임 컨설턴트)

  • Gus Aposta(SQL Server 선임 프로그램 관리자)