Ola의 스크립트 대 유지 관리 계획을 사용하는 것의 장단점은 무엇입니까?


9

유지 보수 계획보다 Ola 솔루션 사용의 장단점을 이해하도록 도와 주실 수 있습니까? 내가 제시 할 SQL Pass ( http://www.pass.org/DownloadFile.aspx?File=ebae1b31 )를 기반으로 프레젠테이션을 준비했습니다 .

또한 Ola의 솔루션과 유지 관리 계획 솔루션이 해결하지 못하는 몇 가지 시나리오를 준비 중입니다. 좀 더 기술적으로 설명해 주시겠습니까?

그런데 Ola의 솔루션으로 최소 150 % 이상의 서버 (2008/2012/2014/2016 혼합)를 75 % 이상 관리하고 있습니다. 나는 Brent Ozar의이 기사를 좋아했다. 그러나 Brent는 여러 서버에서 스크립트 기반 솔루션을 사용하는 것이 좋습니다. https://www.brentozar.com/archive/2012/04/maintenance-plans-roombas-suck-good-way/


우리는 백업, 색인 / 통계 유지 보수, 손상 점검 또는 위의 모든 것을 말하고 있습니까?
nkdbajoe

그들 모두. Ola의 전체 유지 보수 솔루션 스크립트. Ola의 스크립트를 사용하여 유지 관리 계획에서 불필요한 인덱스 재 구축 및 통계 업데이트 문제를 해결했습니다. 방금 다른 DBA에서 더 많은 기술 탄약을 원했습니다. 감사합니다.
Pat

2
개인적으로 최상의 솔루션은 비즈니스 요구 사항과 오류가 발생하면이를 해결할 수있는 기능을 충족시키는 솔루션이라고 생각합니다. Ola의 솔루션은 일반적으로 나쁘지 않지만 여전히 내 환경에 맞는 맞춤형 솔루션을 선호합니다. 예를 들어, 인덱스 유지 관리의 경우 시간을 절약하기 위해 병렬 실행을 원합니다. Ola의 솔루션은 여기에서 작동하지 않습니다. 증분 통계 업데이트를 원합니다 .Ola의 솔루션도 여기에서 작동하지 않습니다.
jyao

그들이 더 낫다는 것을 보여줄 데이터가 있습니까, 아니면 더 나은 느낌으로 가고 있습니까? 이 문제를 해결하는 가장 좋은 방법은 성능 데이터를 가져 와서 방법이 더 나은 이유를 보여주는 것입니다.
Joe W

인덱스 유지 관리의 경우 제한 요소가 SAN 및 스토리지 하위 시스템의 여러 배입니다. SAN 구성에 따라 병렬 재 구축 기능이 향상되지 않을 수 있습니다.
Alen

답변:


13

나는 여기에 썼다

유지 관리 계획은 나쁘지는 않지만 환경이 커지면 유지 관리 계획이 제공하는 제한된 유연성과 기능으로는 충분하지 않습니다.

더 추가하려면

  • Ola의 유지 관리 솔루션은 커뮤니티와 대규모 조직에서 널리 사용 됩니다.
  • 오픈 소스 및 이슈는 github / issues 에서 매우 빠르게 수정 될 가능성이있는 문제 로 제기 될 수 있습니다 .
  • 유연하고 확장 가능합니다 (100 대의 서버에 배포하려는 경우에도 dbatools의 Install-DbaMaintenanceSolution 을 사용하십시오).
  • Microsoft는 버그가 많은 유지 관리 계획 GUI를 수정하는 데 거의 10 년이 걸렸습니다.
  • 광범위한 설명서와 FAQ가 있으며 최신 SQL Server 버전을 수용하도록 지속적으로 업데이트됩니다.
  • 에서 미리보기 버전 , 당신도 병렬 백업을 실행할 수 있습니다.
  • 인덱스 유지 관리 솔루션의 경우 프로세스가 시간 초과 될 수 있습니다 (예 : X 시간 이상 실행되는 경우 중단).

5

스크립트 기반 솔루션의 주요 장점 중 하나는 배포가 용이하다는 것입니다. 150 개 이상의 서버를 보유하고 있으므로 귀하의 경우와 관련이 있습니다. 150 개의 서버에서 여러 유지 관리 계획 (즉, 최소 2, 시스템 데이터베이스 및 사용자 데이터베이스에 대한 계획)을 배포하려는 것은 악몽입니다. 한 번 유지하면 번거롭지 않습니다.

스크립트 기반 솔루션은 시간이 지남에 따라 배포 및 유지 관리가 훨씬 쉽습니다. Ola의 스크립트는 상당히 포괄적이며 대부분의 요구를 충족시킵니다. 이들은 모든 조직이 고유 한 요구 사항에 맞게 조정할 수있는 좋은 출발점입니다.

우리의 경우 DEV 환경에 약 40 개의 SQL 인스턴스가 있으며 SSMS의 다중 연결 기능이있는 수정 된 Ola 스크립트를 사용하여 한 번의 클릭으로 40 개의 인스턴스에서 유지 관리 체제에 대한 변경 사항을 롤아웃 할 수 있습니다. 특별한 경우는 당사의 수정으로 처리됩니다.


3

나는 그의 스크립트를 100 % 확신하지 못하지만 사용자 정의 스크립트는 유지 보수 계획보다 훨씬 낫습니다. 기본 제공 계획은 조각화가 아무리 작더라도 테이블의 모든 인덱스를 다시 작성합니다. Always On (항상 켜짐)을 설정하면 트래픽이 급증합니다.

사용자 정의 스크립트를 사용하면 20 % 이상 또는 임계 값 이상을 재구성 할 수 있습니다. 한 번에 더 적은 인덱스가 다시 작성되었습니다. 보조에 보낼 데이터가 적습니다. 더 적은 인덱스를 다시 작성하기 때문에 더 빠른 다시 작성. 더 짧은 유지 관리 기간이 필요합니다.

마지막으로 유지 관리 계획을 사용했을 때 3 억 개의 행 테이블이 있었으며 인덱스 재 구축이 시작되고 트랜잭션 로그가 오버플로 될 때마다 Always On이 몇 시간 뒤쳐졌습니다. 스크립트로 돌아가서 모두 사라졌습니다.


1
원래 2007 년에 SQL 2005를 위해 나 자신의 글을 썼습니다. 나는 온라인 서적을 기본으로 사용하고 약간 변경했습니다. 당시에는 대부분의 사람들이 계획을 사용하고있는 것처럼 보였으며 이제는 그 계획이 바뀌었던 것 같습니다. DBA 작업을 시작하기 전에 이전의 DBA는 SQL 2000 용 사용자 지정 스크립트를 가지고있었습니다. 재구성하는 것보다 20 % 또는 30 % 이상의 것을 재구성하는 것이 더 빠릅니다. 백업에는 항상 타사 제품을 사용했습니다
Alen

1

위의 것뿐만 아니라 내가 가장 좋아하는 이유는 백업 유형을 자동으로 전환하여 다음 전체 백업 작업이 실행될 때까지 기다리지 않고 로그 백업 작업이 처음 실행될 때 새 데이터베이스가 전체 백업을 갖도록하는 것입니다.


0

유지 관리 계획은 대부분의 시간에 잘 작동합니다. Ola Hallengren의 대본은 대부분 잘 작동합니다.

아주 드문 경우에, 당신은 당신의 자신의 성장해야 할 수도 있습니다.

Jyao가 말했듯이 가장 편하게 작업 할 수 있습니다. 동료가 유지 보수 계획에 가장 편하다면 왜 니콜을 꼬집어 야합니까?

그가 20 년 이상 데이터베이스를 구축했다면 이미 자체 유지 관리 스크립트를 작성했습니다. 운전하는 법을 배우 자마자 카고 쇼트와 플립 플롭에 어린 펑크가 있었을 수도 있습니다. ".

그리고 나서 아마도 4 년의 싸움이 있었을 것입니다. 이제 스키니 진과 괴물 같은 나비 넥타이를 가진 다른 젊은 펑크는 대본으로 돌아가라고 말하고 있습니다. 머리카락을 회색으로 돌리는 것으로 충분합니다.

고려해야 할 세 가지 :

이러한 Hallengrenite 우월성 사례는 실제로 환경에 적용 할 수 있습니까?

유지 관리 계획을 사용하면 실제 문제가 발생합니까?

Hallengren의 대본을 사용하도록 설득하고 문제가 있으면 그가 직접 해결할 수 있습니까? 아니면 당신에게 전화해야합니까?


처음 두 질문에 대한 답변 예. 우리는 이미 유지 보수 계획과 관련된 문제를 보았고 Ola의 솔루션으로 해결했습니다. 프로덕션 서버에도 축소 로그 작업 (??)이 있었으며 즉시 비활성화했습니다. 세번째 질문입니다. 그가 유지 보수 계획 자체에 의해 발생한 문제를 해결할 수 있는지 확실하지 않습니다. 문제가 생겼을 때 물어 보면 어떻게해야합니까? 그의 대답은 Microsoft 지원에 문의하는 것이 었습니다. (?)
Pat

@Pat, 아, 그는 Peter Principle 하에서 자신의 한계에 도달 한 것처럼 들립니다. 그를 더 잘하려고 노력하십시오-그는 도움을 주셔서 감사하지 않을 것입니다.
James
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.