
- •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.6Методы работы и полезные советы администратору баз данных — до 15 мин.
Вы, наверное, уже заметили, что у администратора баз данных имеется множество разных обязанностей. От того, насколько хорошо вы будете выполнять их, зависит мнение пользователей вашей фирмы об администраторах баз данных вашей фирмы и вообще об отделе информационных технологий. В этом разделе мы дадим советы, как показать себя перед пользователями и как следует вести себя в деликатных ситуациях. Описанные здесь методы работы и полезные советы могут не совпасть с ситуациями из вашей практики, поэтому вам следует применять их в соответствии со своим разумением.
Работа с коллективом пользователей
Так как вы выполняете свои специфические обязанности, вам, возможно, не придется непосредственно общаться с коллективом пользователей. Но, скорее всего, вам иногда все же придется общаться с пользователями. В нескольких следующих подразделах описаны некоторые методики, позволяющие сделать общение с конечными пользователями более "гладким".
Потребитель всегда прав. Будьте дипломатичны. Даже если потребитель (пользователь) сообщает вам неверную информацию, не ведите с ними жарких споров. Конечный пользователь может не полностью понимать суть проблемы, либо ему трудно описать ситуацию правильно. В любом случае, не спорьте с пользователями, а относитесь к ним дружелюбно и, по возможности, научите их всему, что относится к данной проблеме. И наконец, наилучшим признаком появления проблем может оказаться реакция людей, ежедневно работающих с системой.
Умейте слушать. Прислушивайтесь к мнению коллектива пользователей. Познакомьтесь с пользователями, знайте, кто есть кто среди них и чем они занимаются. Хотя бы при случае зайдите к ним и спросите, каково их мнение о производительности системы. Часто бывает так, что пользователи первыми замечают падение производительности системы.
Следуйте Золотому Правилу. Как вы знаете, Золотое Правило гласит: "Относитесь к другим людям так, как хотите, чтобы относились к вам". Не унижайте никого и не спорьте с людьми на публике. В долгосрочной перспективе эти люди могут стать вашими союзниками, а не затаят на вас обиду. Такая политика поможет вам стать администратором баз данных, которого все уважают.
Настройка системы. Важной обязанностью администратора баз данных является настройка системы (system tuning). Мы дадим здесь пару советов, которые помогут вам более эффективно настраивать и поддерживать систему. Запомните один совет: при настройке системы меняйте за один раз лишь что-нибудь одно. Тогда вам будет просто понять, какие изменения приводят к увеличению производительности системы, а какие могут привести к ее снижению. Для удобства настройки системы будет полезным вести хорошие заметки.
Когда падение производительности достигло угрожающих масштабов, первую из этих рекомендаций довольно трудно выполнить. В этих случаях часто приходится решать проблему "одним махом", когда изменяются одновременно сразу много компонент. Изменив несколько компонент одновременно, вы увеличиваете шансы добиться повышения производительности, но при этом вы не выясните причину возникновения проблемы. При таком подходе может случиться, что два или несколько изменений окажут противоположные воздействия на систему, из-за чего производительность и вовсе не увеличится.
Работа в кризисных ситуациях
Каждый администратор баз данных иногда попадает в кризисную ситуацию. Ниже даны некоторые советы о том, как следует себя при этом вести.
Не паникуйте. Проблемы, которые сперва кажутся катастрофами, при некотором исследовании не кажутся такими уж экстренными. Однако проблемы с производительностью часто становятся критически важными. Сохраняйте хладнокровие, тогда вы сможете избежать дорогостоящих ошибок. Иногда лучше отвлечься от проблемы на несколько часов и успокоиться, чем сделать ошибку, усугубляющую проблему. Не бойтесь попросить о помощи, если вы нуждаетесь в этом. Взявшись решать проблему, будучи неподготовленным, вы можете создать новые проблемы. Не волнуйтесь и не паникуйте.
Не делайте поспешных выводов. Лично убедитесь в наличии проблемы. Не делайте выводов лишь на основании слов других людей. Иногда бывает, что пока информация дойдет до вас, люди преувеличивают проблему или неправильно понимают ее суть. Не верить слепо всему, что вы прочтете в докладных записках, а проверить факты лично – в ваших интересах.
Пользуйтесь мерами предосторожности. Многие ошибки возникают из-за чрезмерного рвения людей, пытающихся решить проблему. Иногда неправильный ремонт даже хуже, чем первоначальная проблема. Не суетитесь. Вы можете усугубить проблему, если будете работать слишком быстро и недостаточно осторожно. Ваша главная задача – не усугубить проблему.
Отдыхайте. Не работайте без сна или с хроническим недосыпанием. Так можно и заболеть. Решать проблему лучше, будучи внимательным и с ясной головой. Перенапрягаясь на работе, можно создать проблему, более сложную, чем та, которую вы хотите решить. Заботьтесь о себе. Не доводите себя до изнеможения.
Обращайтесь за помощью. Если проблема оказалась слишком сложной и вы не можете ее решить, не бойтесь обратиться за помощью к другим людям. Имеется множество специалистов, которые обладают опытом помощи в кризисных ситуациях. Нет ничего стыдного в том, что вы обращаетесь за помощью. На самом деле, обращение к нужному эксперту, может даже улучшить вашу репутацию.
3Лекция № 2. Введение в Microsoft SQL Server
Продолжительность: 2 часа (90 мин.)
3.1Ключевые вопросы
РСУБД Microsoft SQL Server
Инсталляция Microsoft SQL Server
Службы SQL Server
Применение SQL Server Enterprise Manager
3.2Текст лекции
3.2.1РСУБД Microsoft SQL Server — до 15 мин.
Microsoft SQL Server 2000 – это реляционная система управления базой данных (СУБД). В реляционных базах данных данные хранятся в таблицах. Взаимосвязанные данные могут группироваться в таблицы, кроме того, могут быть установлены также и взаимоотношения между таблицами. Отсюда и произошло название реляционные – от английского слова relational (родственный, связанный отношениями, взаимозависимый). Пользователи получают доступ к данным на сервере через приложения, а администраторы, выполняя задачи конфигурирования, администрирования и поддержки базы данных, производят непосредственный доступ к серверу. SQL Server является масштабируемой базой данных, это значит, что она может хранить значительные объемы данных и поддерживать работу многих пользователей, осуществляющих одновременный доступ к базе данных.
СУБД SQL Server появилась в 1989 году и с тех пор значительно изменилась. Огромные изменения претерпели масштабируемость продукта, его целостность, удобство администрирования, производительность и функциональные возможности. Система SQL Server может быть реализована либо как клиент-серверная система, либо как автономная "настольная" система. Тип проектируемой вами системы зависит от количества пользователей, которые должны одновременно осуществлять доступ к базе данных, и от характера работ, которые должны выполняться. В этом разделе мы рассмотрим оба типа систем SQL Server.
Клиент-серверная система SQL Server может иметь двухзвенную установку (two-tier setup) либо трехзвенную установку (three-tier setup). Независимо от варианта установки, программное обеспечение и базы данных SQL Server размещаются на центральном компьютере, который называется сервер базы данных(database server). Пользователи работают на отдельных компьютерах, которые называются клиенты (clients). Доступ пользователей к серверу базы данных производится при помощи приложений с их компьютеров-клиентов (в двухзвенных системах) либо при помощи приложений, выполняющихся на специально предназначенном для этой цели компьютере, который называется сервер приложений(application server) (в трехзвенных системах).
В частности, в двухзвенных системах клиенты исполняют приложения, осуществляющие доступ к серверу базы данных непосредственно через сеть. Таким образом, компьютеры-клиенты исполняют программный код, соответствующий нуждам предприятия, и код, отображающий для пользователя результаты доступа к базе данных. Такие клиенты называются толстыми (thick client), потому что они выполняют два вида работы. Двухзвенная установка полезна при относительно небольшом количестве пользователей, потому что для соединения с каждым из пользователей расходуются системные ресурсы, такие как память и блокировки (locks). Чем больше будет количество соединений с пользователями, тем хуже будет производительность системы, из-за соперничества за ресурсы. В этих условиях вас может заинтересовать применение трехзвенной системы.
Как уже говорилось ранее, в трехзвенной установке имеется третий компьютер, который называется сервер приложений. В системах этого типа в задачи компьютеров-клиентов входит лишь исполнение программного кода по вызову функций с сервера приложений и отображение результатов доступа. Такие клиенты называются тонкими (thin client). Cервер приложений исполняет приложения, которые выполняют задачи, требующиеся для нужд предприятия, эти приложения являются многопотоковыми (multithreaded), благодаря чему с ними могут работать много пользователей одновременно. Cервер приложений соединяется с сервером базы данных, осуществляет доступ к данным и возвращает результаты клиенту.
Достоинством трехзвенной системы является то, что можно позволить серверу приложений организовывать все клиентские соединения с сервером базы данных, вместо того, чтобы разрешить каждому клиенту самостоятельно устанавливать соединения (такая самостоятельность может привести к нерациональному использованию ресурсов сервера базы данных). Этот подход называется организация пула соединений (connection pooling), при этом предполагается, что запросы клиентов помещаются в пул (или, говоря точно, в очередь, queue), в котором они будут дожидаться ближайшего доступного соединения. Сразу же по освобождении соединения, оно может использоваться для нужд следующего запроса из очереди. Организация пулов соединений позволяет в некоторой степени регулировать объем работы, выполняемой сервером базы данных, конфигурируя количество соединений, имеющихся в пуле и, следовательно, количество соединений, доступных для выполнения задач пользователей. (Количество соединений можно конфигурировать программно.) Так можно избавиться от потребности в большом количестве пользовательских соединений, способных быстро израсходовать ресурсы и замедлить скорость работы. Организация пулов соединений может быть реализована при помощи Internet Information Server (продукта фирмы Microsoft) и программного обеспечения для организации пулов соединений, вроде COM+, являющегося службой компонент, поставляемой вместе с операционной системой Microsoft Windows 2000. Мы не станем углубляться в подробности использования этих продуктов, поскольку программирование приложений выходит за рамки нашего курса.
Для некоторых корпоративных систем и веб-сайтов требуется большая производительность, чем способен обеспечить один сервер. SQL Server 2000 обладает способностью разделять таблицы по нескольким серверам, благодаря чему можно распределить нагрузку по обработке данных.
SQL Server может использоваться также и как автономный (stand-alone) сервер базы данных, работающий на настольном или на портативном компьютере. Мы будем называть такие конфигурации настольными системами (desktop system). В них клиентские приложения исполняются на том же компьютере, на котором хранится программное обеспечение, реализующее механизм работы SQL Server и базы данных. В данной системе применяется только один компьютер, поэтому не устанавливаются никакие сетевые соединения от клиента к серверу – клиент устанавливает локальное соединение со своей локальной установкой SQL Server.
Настольные системы полезны при доступе к базе данных лишь одного пользователя или при небольшом числе пользователей, работающих с базой данных совместно (не одновременно). Настольные системы можно применять, например, в небольшом магазине, в котором имеется только один компьютер, а база(ы) данных – небольшая(ие).