Как DBA контролировать дисковое пространство
Не стоит этого делать.
Это не ваша работа.
Нет, серьезно, подождите секунду. Я не говорю, что вы должны когда-либо говорить такие вещи, как «Это не моя работа», но я хочу, чтобы вы поняли, когда вам следует избегать изобретения велосипеда. Ваши администраторы Windows должны контролировать каждый сервер Windows, который у вас есть, удостоверяясь, что места на диске достаточно. Это не какая-то дикая, уникальная потребность, которую имеет только SQL Server, - это есть в любом центре обработки данных.
В нашем путешествии по иерархии потребностей базы данных нам действительно нужно говорить о емкости, но я не хочу контролировать пространство на диске изнутри SQL Server, и я не хочу покупать специальные инструменты SQL для этого. Да, вы можете технически использовать команды, такие как xp_fixeddrives, чтобы посмотреть сколько свободного дискового пространства у нас есть, но это не везде работает.
Почему вы не должны создавать инструмент мониторинга
Если вы хотите стать профессиональным разработчиком, вы должны создавать вещи. Вы должны узнать, какие исключения могут произойти, как их обнаружить и как элегантно разрешить. Это тяжелая работа, но, если вы хорошо будете справляться с ней - действительно хорошо - вы сможете создавать удивительные вещи и зарабатывать этим на жизнь.
Но если вы хотите быть профессиональным администратором баз данных, вы должны оставить разработку разработчикам.
Я не говорю, что вы не должны изучать динамические управленческие взгляды (DMV), как копаться в них, чтобы найти доказательства, которые вам нужны, и как превратить эти данные в действия. Надеюсь, что я смогу научить вас, как сделать это в течение следующих шести месяцев. Еще раз взгляните на Иерархию потребностей в базе данных и подумайте о том, что мы будем изучать в течение следующих шести месяцев.
Создание дерьмового инструмента мониторинга в свободное время не принесет вам должного уважения. (И да, если у вас есть свободное время только на работе, ваш инструмент мониторинга будет дрянным. Если у вас есть так много времени, что вы можете создать замечательный инструмент для мониторинга, вам нужно сосредоточиться на поиске работы, потому что вы будете уволены, если у вас настолько много свободного времени.)
Как выбрать инструмент мониторинга
Существует два вида инструментов мониторинга для SQL Server.
Up/down Alerting - эти инструменты следят за тем, запущена ли служба SQL Server, и все ли ее основные потребности удовлетворены. Если на сервере заканчивается свободное место на диске, если служба останавливается, если журнал событий начинает заполняться ошибками, эти средства позволят вам узнать об этом. Наиболее популярным программным обеспечением в этой категории являются Dell Spotlight, Idera SQL Diagnostic Manager и Red Gate SQL Monitor.
Performance Diagnostics - эти инструменты пытаются получить информацию о динамических представлениях управления SQL Server (DMV), чтобы помочь тюнерам производительности выжать максимальную пропускную способность из своего оборудования. Наиболее популярным программным обеспечением в этой категории являются SQL Sentry Performance Advisor, Dell Foglight Performance Analysis.
На вашем месте я бы спросил команду Windows, есть ли у них программное обеспечение, которое обрабатывает уведомления о взлетах и падениях, мониторинг пропускной способности и т. д. Если да, попросите их начать мониторинг ваших серверов.
Затем, независимо от того, какую тип инструмента вы покупаете, составьте список последних 4-5 вещей, из-за которых ваш телефон звонит чаще всего в нерабочее время. Вот некоторые из моих личных фаворитов:
- Deadlocks (мёртвые блокировки)
- Неконтролируемые запросы, выполняемые несколько часов
- длительное выполнение, к примеру, слишком медленное резервное копирование
- Запросы, которые отчаянно нуждаются в индексе
Подумайте, как воссоздать те же симптомы в вашей среде разработки, а затем получить бесплатную пробную версию нескольких инструментов, о которых я говорил. (Все они предоставляют бесплатные 10-14-дневные испытания.) Воспроизведите проблему и посмотрите, как реагирует программное обеспечение для мониторинга. Может ли это привести вас к первопричине быстро, или у нее просто есть куча мигающих красных лампочек на консоли? Это поможет вам сэкономить время и быстрее принять правильное решение.
Ваша домашняя работа на этой неделе
На этой неделе я не ожидаю, что вы волшебным образом получите утверждение бюджета для инструмента, но я хочу, чтобы вы начали составлять список повседневных проблем, когда они появятся. Если вы потратите четыре часа на поиск и устранение неполадок с тупиковой ситуацией, отметите дату, время и несколько слов об основной причине. Через месяц или два вы сможете представить этот список своему боссу в качестве доказательства того, почему правильный инструмент мониторинга может сэкономить вам деньги.