- •1Общие положения
- •1.1Рекомендуемая литература
- •1.1.1Основная литература
- •1.1.2Дополнительная литература
- •1.2Учебно-материальное обеспечение
- •2.2.2Основные обязанности администратора баз данных sql Server — до 30 мин.
- •2.2.3Документирование — до 15 мин.
- •2.2.4Планирование — до 15 мин.
- •2.2.5Прочие обязанности администратора баз данных — до 10 мин.
- •2.2.6Методы работы и полезные советы администратору баз данных — до 15 мин.
- •3.2.2Инсталляция Microsoft sql Server — до 30 мин.
- •3.2.3Службы sql Server — до 30 мин.
- •3.2.4Применение sql Server Enterprise Manager — до 15 мин.
- •4.2.2Группы файлов — до 20 мин.
- •4.2.3Автоматический рост файлов — до 10 мин.
- •4.2.4Системные базы данных — до 5 мин.
- •4.2.5Создание баз данных — до 25 мин.
- •4.2.6Просмотр баз данных — до 10 мин.
- •4.2.7Удаление баз данных — до 10 мин.
- •5.2.2Индексные ключи — до 5 мин.
- •5.2.3Простые индексы — до 10 мин.
- •5.2.4Составные индексы — до 15 мин.
- •5.2.5Уникальность индекса — до 15 мин.
- •5.2.6Типы индексов — до 25 мин.
2.2.2Основные обязанности администратора баз данных sql Server — до 30 мин.
Администраторы баз данных могут иметь разные обязанности, в каждой фирме круг его обязанностей определяется по-своему. Есть, однако, некий набор основных обязанностей, выполняемых в большинстве случаев. Если эти обязанности не совпадают с вашими обязанностями по работе, не беспокойтесь, т.к. у каждого администратора баз данных могут быть свои собственные нестандартные задачи. В данной лекции вы познакомитесь с обязанностями, о которых вы могли не знать достаточно хорошо, вам откроется окно в мир администрирования баз данных. Обязанности и работы администратора баз данных SQL Server сгруппированы по категориям. Эти категории не упорядочены по важности или по объему затрачиваемого на них труда.
Администратора баз данных часто зовут, когда надо инсталлировать на компьютер новое программное обеспечение или чтобы сконфигурировать аппаратную часть либо программное обеспечение, или хотя бы для того, чтобы он принял участие в проекте. Иногда администратора баз данных приглашают только для создания спецификаций на инсталляцию и на конфигурацию. В любом случае, администратор баз данных должен участвовать в этом процессе, чтобы гарантировать правильность конфигурирования системы и базы данных. Часть работы администратора баз данных – убедиться в том, что система сконфигурирована оптимально для работы с SQL Server.
Администраторы баз данных должны участвовать не только в инсталляциях SQL Server, но и в инсталляциях Microsoft Windows 2000 и другого программного обеспечения. Вы должны проверять, чтобы опции были установлены правильно, а ненужные компоненты не были инсталлированы и сконфигурированы. Во время инсталляции Windows 2000 можно ненароком наустанавливать множество нежелательных компонент. Такие компоненты, как Internet Information Server (IIS) , сервер протокола DHCP (Dynamic Host Configuration Protocol), Message Queuing и службы для доступа к файлам и принтерам являются слишком большой нагрузкой для системы, и особенно надо учитывать, что они могут никогда не понадобиться.
Неплохо было бы составить документ, описывающий инсталляцию Windows 2000, в котором был бы список компонент, которые вы хотите инсталлировать на компьютер. Этот документ пригодится еще не один раз при последующих инсталляциях Windows 2000, что очень способствует воспроизводимости и единообразию ваших инсталляций Windows 2000.
Кроме инсталляции Windows 2000 (или помощи при инсталляции Windows 2000), администраторы баз данных отвечают за правильную инсталляцию SQL Server 2000. Важно инсталлировать SQL Server 2000 правильно, потому что некоторые настройки, задаваемые в процессе инсталляции, можно поменять только лишь при полной переинсталляции программного обеспечения. К таким настройкам относится выбор местоположения двоичных файлов и файлов данных SQL Server. Если вы впервые инсталлируете SQL Server 2000, то будет неплохо для начала инсталлировать ее на тестовом компьютере, а затем уже выполнить инсталляцию на рабочем компьютере. Так вы сможете попробовать применять разные опции и приобрести навыки в процессе инсталляции. Как и в случае с инсталляцией Windows 2000, будет неплохо документировать процесс инсталляции SQL Server 2000.
Обычно администратору баз данных не приходится часто конфигурировать аппаратуру сервера, но в некоторых случаях вам придется заниматься этим. Как и в случае с инсталляцией, если вы не производите конфигурацию аппаратуры и программного обеспечения своими руками, вы должны принимать участие в этом процессе, чтобы гарантировать, что эти работы будут выполнены в соответствии с вашими спецификациями. Как администратор баз данных SQL Server, вы должны уметь указать количество дисков и контроллеров, а также задать спецификации всех RAID-контроллеров. Вы несете окончательную ответственность за производительность и стабильность системы, поэтому вы должны применить свой опыт и знания, чтобы оптимально сконфигурировать систему SQL Server, чтобы она была мощной, производительной, масштабируемой и способной к росту.
Важно документировать принятую вами конфигурацию, это относится и к случаю с инсталляцией программного обеспечения. Иногда полезно документировать и причины, по которым были приняты ваши решения. Возможность вспомнить, почему были приняты те или иные решения о конфигурации компонент, поможет при будущих изменениях и обновлениях. Не забудьте задокументировать все подробности, вроде какие были использованы шины PCI и как были сконфигурированы RAID-контроллеры. Чтобы узнать некоторые подробности о конфигурации (найти значения некоторых параметров), понадобится перезагрузка в диагностический режим, поэтому их документирование на этапе начальной установки программного обеспечения может избавить вас от напрасных усилий и потерь времени в будущем.
Помните, что ответственность за конфигурирование системы лежит, в конечном счете, на вас, так как вы отвечаете за производительность и стабильность базы данных SQL Server. Поэтому вы должны убедиться в том, что система была правильно сконфигурирована для работы SQL Server. Задокументировав причины выбора тех или иных настроек конфигурации, вы поможете другим людям понять и оценить правильность ваших решений.
Администратор баз данных также отвечает за безопасность (защиту) системы, он должен следить за этим и докладывать обо всех проблемах. Часто имеется эксперт по безопасности из вашей компании или из сторонней фирмы, которому, при необходимости, можно позвонить. Объем доступа к вашей системе определяет тип и степень защиты, требуемой для вашей базы данных. Система, доступ к которой имеют лишь немногие надежные сотрудники и не подключенная к Интернету, очевидно, нуждается в меньшей защите, чем база данных с доступом из Интернета.
Безопасность системы важна, потому что если кто-нибудь вторгнется в систему и разрушит или украдет данные, то ваша фирма понесет серьезный урон. Безопасность системы начинается с управления пользователями, о котором мы расскажем в следующем разделе. Кроме управления пользователями вы можете быть участниками разработки и реализации плана защиты вашей сети. Эта задача обычно поручается сотрудникам, имеющим богатый опыт в защите сетей. Если вы – такой сотрудник, то вы можете быть не только администратором баз данных, но и администратором защиты сети.
К задачам защиты сети относится приобретение, конфигурирование и развертывание сетевых прокси-серверов и защитных шлюзов. Подобные средства аппаратной/программной защиты поставляются многими фирмами. Человек, ответственный за безопасность сети компании, отвечает за изучение и выбор правильного решения. Защита сетей сама по себе может быть темой еще одной книги, поэтому мы не будем более вдаваться в этот предмет. А в рамках SQL Server основными задачами обеспечения защиты, в которых вы будете участвовать, являются аудит и управление пользователями.
Аудит системы включает в себя мониторинг (отслеживание) как ошибок в журнале ошибок SQL Server и в журнале событий Windows 2000, так и применение SQL Server Profiler для мониторинга деятельности внутри SQL Server. Журнал SQL Server и журнал событий содержат важную информацию о SQL Server, о Windows 2000 и о безопасности. Вы должны тщательно проверять эти журналы, следить, нет ли там каких-либо признаков, указывающих на проблемы.
Как уже говорилось, вы можете организовать аудит своей системы при помощи SQL Server Profiler. Можно создать профили, регистрирующие, например, такие события, как неуспешные попытки входа в систему. Кроме того, вы можете регистрировать такие события, как операторы языка описания данных (DDL, data definition language) и операторы INSERT, UPDATE и DELETE. Пользуясь SQL Server Profiler, вы сможете отслеживать определенные события, а также следить за временем входов в систему, за именами пользователей и за деятельностью.
Больше всего времени у администратора баз данных уходит на обычную ежедневную работу. Эта неблагодарная работа может иногда надоедать вам, но не забывайте, что именно эти задачи могут оказаться наиболее важными и необходимыми. Администратор баз данных отвечает за обеспечение работоспособности системы, а чтобы система обладала работоспособностью, чрезвычайно важно выполнять такие задачи, как резервное копирование и восстановление.
Многие считают, что наиболее ответственными обязанностями администратора баз данных являются резервное копирование и восстановление. Эти работы гарантируют сохранение базы данных при серьезных отказах оборудования. При таких отказах надежда оживить базу данных зависит только от резервной копии. Операции резервного копирования являются единообразными и понятными, но вы должны выполнять их достаточно часто. Чтобы гарантировать хорошее качество этих резервных копий вы также должны регулярно их тестировать и убеждаться в их пригодности. Уделяя надлежащее внимание этим работам, вы избежите ошибок и сможете гарантировать безопасность своей системы.
Еще одной повседневной задачей является управление пользователями. Оно заключается в администрировании входов в SQL Server и ролей базы данных. К важной обязанности администратора баз данных относится обеспечение авторизованными правами доступа всех желающих работать с базой данных. Такие права доступа предоставляются администратором баз данных обычно после одобрения отделом кадров. Обратите внимание, чтобы такое одобрение отдела кадров было получено до того, как вы предоставите доступ к любым из объектов базы данных, и предоставляйте лишь такие полномочия, которые понадобятся данному пользователю. Не поддавайтесь искушению предоставлять общий доступ к базе данных; чтобы предоставлять права доступа, соответствующие потребностям различных подразделений вашей фирмы, удобно пользоваться ролями базы данных.
К другим обычным работам можно отнести наблюдение за использованием места для хранения базы данных, реорганизация индексов, проверка достоверности объектов базы данных и мониторинг общего "состояния здоровья" системы. Важен мониторинг изменений в системе. Любое изменение, даже самое незначительное, может быть признаком надвигающихся проблем. Многие рутинные работы являются достаточно важными, чтобы вы внимательно следили за ними. Вы можете автоматизировать такие задачи, как реорганизация индексов или запуск проверок на непротиворечивость, но все же время от времени вы должны уделять им внимание.
Нужно следить, чтобы система обеспечивала определенный уровень качества обслуживания для важных задач. Этот уровень качества обслуживания, который должна обеспечивать ваша система, может определяться соглашением об уровне обслуживания (SLA, service level agreement). Даже если нет никакого контракта, все равно администратор баз данных должен обеспечивать наилучший уровень обслуживания. Этого можно добиться, стремясь к максимально большему времени работоспособности системы и к максимальной производительности, настраивая производительность и планируя мощность.
Вы должны постоянно следить за производительностью системы и делать заметки обо всех изменениях. Если время отклика системы вдруг становится больше, повышается объем использования центрального процессора, становится больше контекстных переключателей и т.д., то все это может быть признаками надвигающихся проблем. Вы должны следить отдельно за каждой системой, а также по-разному интерпретировать результаты этого мониторинга. Вы должны оценивать работу систем, хорошо ли они работают или нет. Если появились признаки проблем с производительностью, то надо диагностировать эти проблемы и найти их решения.
Вы должны периодически следить за использованием системных ресурсов и за производительностью. Если вы следите за состоянием системы, вы можете расширить систему до того, как произойдет снижение производительности. При достижении предела мощности системы ее расширение обойдется дороже (как в денежном выражении, так и по длительности простоя). SQL Server предлагает несколько инструментальных средств для мониторинга системы, перечисленных ниже вместе с другими средствами для мониторинга:
System Monitor. Применяется для мониторинга использования ресурсов SQL Server и Windows 2000. System Monitor является средством Windows 2000, доступным из меню Start.
SQL Server Enterprise MАnager. Предоставляет как информацию об использовании ресурсов, так и некоторую ограниченную информацию о производительности.
Программы мониторинга систем управления реляционными базами данных от сторонних производителей. Эти средства имеют возможности для мониторинга систем управления реляционными базами данных (RDBMS, relational database mАnagement system) и для выдачи оповещений.
Сетевые мониторы. Применяются при необходимости слежения за сетью. Это – SMS (Systems MАnagement Server) от фирмы Microsoft и утилиты от сторонних производителей.
Общение с пользователями. Позволяют получить информацию о том, как пользователи оценивают производительность системы. Очень важно иметь контакт с коллективом пользователей и понимать, довольны ли они работой системы. Очень часто проблема заключается только в отсутствии взаимодействия между администратором баз данных и пользователями.
Средства для мониторинга использования места на диске. Это – Проводник(Microsoft Windows Explorer) и средства для мониторинга от сторонних производителей. Некоторые средства могут следить и за Windows 2000, и за SQL Server.
Что же касается настройки системы, то эта работа может понадобиться при повышении рабочей нагрузки.
Кроме настройки и мониторинга системы вы будете отвечать за оценку того, будет ли система работать с предполагаемой нагрузкой. Регулярно выполняя задачи состава системы и планирования мощности, вы сможете хорошо планировать увеличения мощности еще до возникновения вероятных проблем. Состав системы и планирование мощности являются сложными задачами. Если вы столкнулись с ситуацией, когда мощность системы вскоре, вероятно, будет исчерпана, и не знаете, как решить эту задачу, то вам следует обратиться к специалистам из сторонней организации.
Как мы уже говорили, администратор баз данных отвечает и за обеспечение периодов работоспособности (uptime) системы. Если система не будет функционировать оптимально, то будут страдать потребители вашей работы (коллектив пользователей). Любой период неработоспособности (downtime) системы дорого обходится как вашей фирме, так и пользователям. Поэтому поддержание максимальной длительности работоспособного состояния системы является одной из ваших главных обязанностей.
Периоды неработоспособности можно сократить, если тщательно планировать их расписание. Если расписание периодов неработоспособности распланировать заранее, то это будет приемлемым предупреждением для коллектива пользователей и других сотрудников, так что они смогут к этому подготовиться. Планирование периодов неработоспособности должно производиться таким образом, чтобы хватило времени на выполнение всех необходимых работ. Кроме того, надо позаботиться, чтобы люди, которых это касается, были надлежащим образом извещены о предстоящем отключении. И конечно, если ваша база данных обслуживает Интернет, то могут понадобиться и еще некоторые приготовления.
Вы можете посчитать удобным устраивать периоды неработоспособности по определенному расписанию, например, в первое воскресенье каждого месяца. Тогда пользователи всегда будут знать о предстоящем отключении и смогут к нему подготовиться. Обычно такие отключения планируются на нерабочие часы, чтобы неудобства затронули как можно меньшее число людей.
Периоды неработоспособности можно также уменьшить благодаря подготовке к возможным авариям. Вы должны быть готовы восстанавливать систему даже при длительных выходах системы из строя. Аварии могут принимать разные формы. Система может "рухнуть" из-за отказа оборудования. Эти проблемы обычно решаются заменой отказавших компонент и перезагрузкой компьютера. Если же проблема связана с отказом диска, то безотказная работа может быть организована при помощи RAID-массивов. При отказе всего RAID-массива может потребоваться восстановление базы данных из резервной копии. В любом случае, данный тип отказов обычно исправляется в течение нескольких часов.
Если причиной отказа является программное обеспечение, то эти проблемы иногда могут быть исправлены перезагрузкой, а иногда может понадобиться восстановление базы данных, если произошло повреждение базы данных. Программное обеспечение редко отказывает именно таким образом, однако повреждение базы данных часто может оказаться разрушительным.
Более серьезной проблемой может стать разрушение вашего вычислительного центра. Это может случиться из-за природной катастрофы, например, землетрясения, наводнения или урагана. Это может привести к отказу работы компьютеров (и, возможно, отсутствию электропитания) на несколько дней или даже на несколько недель. Некоторые из таких проблем могут быть решены созданием резервного вычислительного центра. Если катастрофа выведет из строя ваш основной вычислительный центр, то благодаря резервному вычислительному центру ваша фирма сможет быстро вернуться в бизнес. Возможно, на резервном вычислительном центре не удастся восстановить все транзакции, поступившие на основной вычислительный центр в момент аварии, но вы, вероятно, все же сможете сохранить работоспособность вашего бизнеса в промежуток времени от аварии до восстановления основной базы данных. Администратор баз данных должен участвовать в планировании и реализации резервного вычислительного центра.
