
- •Основные функции администратора баз данных
- •Основные сведения о sql 2000 Server. Ключевые характеристики и назначение Microsoft sql Server 2005. Основные компоненты.
- •Создание пользовательских баз данных. Создание базы данных из sql server management studio. Создание базы данных при помощи команды create daabase.
- •Системные базы данных.
- •Файлы база данных и журналы транзакций. Применение файловых групп. Режимы работы базы данных. Расширенные свойства баз данных
- •Выполнение служебных операций с базами данных: увеличение размера базы данных, уменьшение размера базы данных, перенос файлов баз данных, переименование, удаление базы.
- •7 Терминология и основы системы безопасности sql Server 2005
- •8 Логины sql Server 2005 Выбор типа логина
- •Создание логинов в sql Server 2005, create login, парольные политики, свойства логинов
- •Логины, создаваемые по умолчанию
- •9 Серверные роли. Разрешения на уровне сервера
- •10 Пользователь и схема
- •11 Создание, изменение и удаление пользователей базы данных
- •Встроенные пользователи базы данных
- •12 Предоставление прав на объекты в базе данных
- •13.Роли приложений. Изменение контекста выполнения. Выражение execute as.
- •14.Основы резервного копирования sql server 2005. Типы резервного копирования.
- •15.Основы восстановления баз данных. Проведение восстановления
- •16. Режимы восстановления баз данных. Оперативный режим восстановления. Восстановление отдельных страниц. Восстановление системных баз данных.
- •Восстановление базы данных в оперативном режиме
- •Восстановление отдельных страниц базы данных
- •Восстановление системных баз данных
- •17 Автоматическая доставка журналов
- •18. Зеркальное отображение баз данных.
- •19 Управление транзакциями (не совсем!!!!!)
- •21. Репликация баз данных. Планирование, реализация, мониторинг и управление репликацией. Типы репликации.(неполное)
- •22 Средства администрирования
- •23. Применение sqlcmd.
- •24 Мониторинг производительности sql Server 2005
- •Средства для мониторинга и анализа производительности
24 Мониторинг производительности sql Server 2005
Оценка производительности SQL Server 2005, задачи мониторинга производительности
Кроме наблюдения за событиями, происходящими на сервере, и регулярного просмотра журналов, у администраторов SQL Server 2005 есть еще одна важная обязанность — мониторинг производительности работы сервера.
Главная цель мониторинга производительности — обеспечить комфортную работу пользователей с приложением, который использует SQLServer 2005. При этом нужно не только оценивать текущую производительность, но и прогнозировать развитие тенденций в будущем. Хороший администратор не ждет ситуации, когда пользователи в один голос сообщат руководству, что работать с задачей стало невозможно, а решает проблемы с производительностью еще до того, как они станут мешать работе пользователей.
Конечно, на большинстве предприятий, особенно небольших, никто не занимается мониторингом производительности и не отслеживает тенденции, ограничиваясь прикидками "быстро/не быстро". Однако на больших предприятиях для важных задач такой мониторинг производится обязательно. Да и на любом предприятии при приеме задачи в эксплуатацию стоит задавать вопрос: а что будет через несколько лет, когда в базе данных накопятся десятки гигабайт информации? Обычно намного проще заставить разработчика уделить внимание вопросам, связанным с производительностью, при приеме задачи, чем пытаться сделать что-то через 3—4 года после ввода задачи в эксплуатацию.
Существует большое количество книг и статей, которые посвящены вопросам мониторинга оптимизации производительности SQL Server. В качестве отправной точки для поиска информации можно посоветовать замечательный Web-сайт www.sql-server-performance.com. Это компилятивный Web-сайт, на котором систематизируются и выкладываются статьи, главы из книг и утилиты из самых разных источников.
Есть также специальный учебный курс Microsoft, который посвящен исключительно вопросам производительности SQL Server. Правда, он был создан еще для SQL Server 7.0 (и в настоящее время для заказа в учебных центрах недоступен), но большинство тем в этом курсе не потеряло актуальности и для SQL Server 2005.
Для мониторинга и оптимизации производительности существует своя терминология. С этой терминологией (и общим планом мониторинга производительности) вы познакомитесь в следующем разделе.
Средства для мониторинга и анализа производительности
Системный монитор (System Monitor) для анализа производительности SQL Server 2005, logman.exe, relog.exe, typeperf.exe, HostMonitor, AppManager
На производительность приложения, работающего с SQL Server, влияют самые разные факторы. Для анализа каждого из таких факторов вам потребуются свои средства.
Наиболее универсальное средство мониторинга и анализа производительности — это Системный монитор (System Monitor). В Windows NT 4.0 он назывался Монитором производительности (Performance Monitor). Это средство предназначено для работы со счетчиками производительности как для операционной системы, так и для SQL Server. Про работу с Системным монитором подробно рассказывается в следующих разделах. Здесь отметим только некоторые моменты:
- в Windows Server 2003 появилась версия Системного монитора, которая предназначена для работы из командной строки. Это утилита logman. Она позволяет выполнять протоколирование показаний счетчиков в файлы на диске или источники данных ODBC точно так же, как и графическая версия Системного монитора. Если вам постоянно приходится выполнять замеры производительности, собирая показатели одного и того же набора счетчиков, то будет удобнее написать пакетный файл с командной строкой на запуск этой утилиты с необходимыми параметрами;
- утилита командной строки relog, которая также появилась только в Windows Server 2003, позволяет производить конвертацию файлов с собранными показаниями счетчиков из одного формата Системного монитора в другой (например, из двоичного формата BLG в текстовый CSV);
- еще одна новая утилита Windows Server 2003, которая называется typeperf, предоставляет возможность для просмотра показаний счетчиков Системного монитора в командной строке;
- существуют утилиты третьих фирм, которые позволяют работать со счетчиками Системного монитора, например HostMonitor и AppManager. Эти утилиты предоставляют более удобный графический интерфейс для просмотра и анализа данных по производительности. Но, с точки зрения автора, те дополнительные возможности, которые дают эти утилиты, не принципиальны. Обычно они предлагают более удобные возможности просмотра тех же счетчиков Системного монитора. Однако вы всегда можете загрузить данные, собранные Системным монитором, в Excel и использовать для просмотра и анализа мощные средства этого приложения Microsoft Office.
При оптимизации производительности всегда имеет смысл ориентироваться на максимальную нагрузку сервера. Обычно проблемы с производительностью возникают именно в такие пиковые часы, когда с системой работает максимальное количество пользователей. Однако часто возникают ситуации, когда администратору приходится оценивать производительность приложения и принимать решение о целесообразности его приобретения до того, как оно развернуто на предприятии. Другая возможная ситуация — нужно принять решение о покупке нового сервера, но не совсем понятно, насколько мощное оборудование потребуется приложению при максимальной нагрузке.
В таких ситуациях может быть очень полезной искусственная имитация нагрузки со стороны пользователей — так называемое нагрузочное тестирование (stress testing).
Еще одно важное средство для анализа производительности работы приложения — профилировщик (SQL Server Profiler). Это средство позволяет найти и запротоколировать команды, которые передаются на сервер приложением, а также найти запросы, на выполнение которых требуется много времени.
Если вы подозреваете, что работу вашего приложения тормозят проблемы с сетью, то для анализа таких проблем вам потребуется Сетевой монитор.
Для анализа и оптимизации системы индексов удобнее всего использовать программное средство Database Tuning Advisor (Index Tuning Wizard вSQL Server 2000).
Для оптимизации запросов к SQL Server очень удобно использовать средства SQL Server Management Studio.