Введение
Вашему вниманию предлагается четвертое издание книги Руководство администратора баз данных Microsoft SQL Server! Как SQL Server 2000 - лучший инструмент для разработки реляционных баз данных из всех когда-либо выпущенных компанией Microsoft, так и эта книга - лучшее и самое полное издание Руководства администратора баз данных Microsoft SQL Server (надеемся, что вы с нами согласитесь!). По сравнению с предыдущими настоящее издание существенно улучшено и дополнено. Причем многие улучшения были предложены нашими читателями, приславшими отзывы по электронной почте, а также высказаны в группах новостей. В конце многих глав есть специальный раздел, в котором мы попытались ответить на распространенные вопросы, полученные от читателей по электронной почте, а также поделились собственным опытом работы с продуктом. Работа над книгой была распределена следующим образом: ведущие авторы занимались развитием основных тем, а остальные сосредоточились на отдельных вопросах, посвященных новым возможностям SQL Server 2000. Хочется надеяться, что этот подход позволил создать действительно хорошее руководство, которое пригодится вам в работе.
Спасибо за все отзывы и похвалы, которые вы нам прислали по электронной и обычной почте! Присылайте еще!
Марк Шпеник и Оррин Следж
Для кого предназначена эта книга
Чтобы стать хорошим администратором базы данных, нужно изучить графический внешний интерфейс, понять, что происходит "внутри" (т.е. что на самом деле происходит после щелчка на определенной кнопке), разобраться в самом продукте и в особенностях своей работы. Поэтому, приступая к написанию книги, мы ставили перед собой следующие цели:
- дать теоретические знания администратору базы данных SQL Server;
- ориентироваться на администраторов и разработчиков разных уровней квалификации - начинающих, средних и опытных;
- привести важные сведения (советы, приемы и предложения), разбросанные в море документации;
- дать практические советы из опыта профессионалов;
- привести приблизительный список задач администратора базы данных SQL Server и методы их решения;
- перечислить соглашения и стандарты именования объектов;
- дать подробное описание задач, выполнение которых входит в повседневные обязанности администратора базы данных SQL Server.
Структура книги
Книга разделена на несколько частей, которые соответствуют различным задачам администратора базы данных SQL Server.
В главе 1, "Роль администратора базы данных", рассматривается наиболее общий круг задач и обязанностей администратора баз данных.
В главе 2, "Обзор SQL Server", приведен общий обзор SQL Server 2000 и его возможностей.
В главе 4, "Планирование инсталляции и модернизации сервера", рассматривается составление плана, необходимого при установке SQL Server 2000 или при переходе на новую версию. Что делать, если переход на новую версию потерпел неудачу? В данной главе рассматривается эта тема и некоторые другие. В главе 5, "Инсталляция и модернизация SQL Server", описывается процесс установки и переход на новую версию.
В главе 6, "Использование SQL Server Enterprise Manager", рассматривается работа средства SQL Server Enterprise Manager и различные задачи, выполняемые с его помощью.
Как настроить SQL Server? Конфигурирование SQL Server 2000 предоставляет множество возможностей, обсуждаемых в главе 7, "Установка параметров и настройка SQL Server".
Глава 8, "Обслуживание баз данных", посвящена вопросам создания и удаления баз данных, а также управления их работой. Эта глава включает описание журналов транзакций и файлов данных.
В главе 9, "Учетные записи и вопросы безопасности SQL Server", рассматриваются способы управления пользователями и безопасностью данных, которые по сравнению с предыдущими версиями SQL Server значительно изменились.
Как с помощью резервных копий восстановить базу данных? Насколько SQL Server 2000 упростил задачи резервного копирования и восстановления? Что делать, если после резервного копирования база данных терпит крах? Можно ли выполнить восстановление базы данных на заданный момент времени? Ответы на эти и другие стандартные вопросы, интересующие администраторов баз данных, можно найти в главе 9, "Учетные записи и вопросы безопасности SQL Server".
Как работать с программой BCP? При работе с нею почти каждый администратор баз данных нередко допускает досадные ошибки. В главе 14, "Утилита BCP", подробно описаны существенные детали работы с программой BCP и приведены многочисленные советы и примеры.
В главе 15, "Поиск ошибок в SQL Server 2000", рассматриваются способы решения проблем, возникающих в процессе работы баз данных SQL Server.
Глава 17, "Проектирование баз данных", посвящена основам разработки реляционных баз данных. В главе 18, "Использование индексов", описываются принципы работы и способы рационального использования индексов.
В главе 19, "Оптимизация запросов", доступно излагаются принципы работы программы оптимизации эффективности выполнения запросов SQL Server. Эта глава содержит много полезных советов и подсказок на случай, если транзакции выполняются слишком медленно или часто происходят взаимоблокировки. При решении проблем, связанных с низкой эффективностью выполнения запросов, очень важно уметь пользоваться планом выполнения запросов. Главная трудность состоит в том, что генерируемый сервером план содержит много непонятной информации. В этой главе рассматривается, на что следует обращать внимание в плане выполнения, что означают отдельные элементы плана и как на основе этой информации повысить эффективность выполнения запросов.
Вероятно, каждому администратору баз данных приходилось сталкиваться с ситуацией, когда при одном зарегистрированном пользователе система работает отлично, если же их появляется несколько - эффективность резко падает. Виной тому блокировки и взаимоблокировки. В главе 20, "Коллективный доступ к данным", представлены способы решения проблем, возникающих в многопользовательском режиме. Крайне важно, чтобы администратор баз данных был знаком с новыми средствами динамических блокировок в SQL Server 2000.
В главе 21, "Основы SQL", приведен обзор операторов языка SQL. В главе 22, "Использование хранимых процедур и курсоров", эта тема рассматривается очень подробно.
В настоящее время книга без главы об Internet была бы явно неполной. В главе 23, "SQL Server 2000 и Internet", описывается создание Webстраниц с помощью SQL Server 2000.
Существует немало инструментов SQL Server, предназначенных для обнаружения и устранения причин низкой эффективности выполнения запросов. Однако нужно уметь ими пользоваться. Например, средство Performance Monitor позволяет наблюдать более 40 различных счетчиков SQL Server и несколько сотен счетчиков операционной системы. Глава 24, "Анализ функционирования SQL Server", поможет сориентироваться среди этого многообразия счетчиков и обнаружить с их помощью узкие места в работе сервера.
Реализация SQL Server поддерживает OLE. Но что можно сделать с ее помощью? В главе 26, "Использование распределенных объектов управления SQL", поэтапно рассматривается создание приложения на основе Visual Basic, способного существенно упростить задачу управления базой данных.
В главах 27-29 подробно рассматриваются средства репликации в SQL Server 2000.
В главе 30, "Основные сведения о хранилищах данных", вводится терминология и рассматриваются принципы долговременного хранения данных. Полезную информацию о пополнении хранилища данными из других систем можно найти в главе 13, "Использование служб преобразования данных (DTS)", и особенно в главе 31, "Службы анализа данных Microsoft SQL Server 2000".
В приложениях также содержится ценная информация. Не пропустите ее!
Соглашения, принятые в книге
В этой книге принят ряд соглашений.
Команды, их параметры, операторы и текст, появляющийся на экране, выделяются .
Текст, который должны ввести вы, выделяется полужирным шрифтом.
Для новых терминов и определений используется курсив.
Об авторах
Марк Шпеник (Mark Spenik) - вице-президент фирмы по корпоративным технологиям компании Trilogy Consulting, находящейся в Ричмонде, шт. Виргиния. Окончил Университет Джорджа Мэйсона (George Mason University) в Ферфаксе (Fairfax), шт. Виргиния, и в 1985 году окунулся в мир компьютерной индустрии. Он создал ряд крупных приложений и проконсультировал множество фирм по вопросам разработки программ и их переноса на другие платформы. Марк - программист высокой квалификации, знающий Assembler, C, C++, HTML, Active Server Pages и Visual Basic. Он имеет сертификат MCSD; его часто приглашают выступать на конференциях и семинарах разработчиков программного обеспечения. Марк был соавтором нескольких книг по Visual Basic и SQL Server. С ним можно связаться по адресу: [email protected].
Оррин Следж (Orryn Sledge) - руководитель Fulltilt Solutions. Проживает в г. Питтсбурге, шт. Пенсильвания. Оррин специализируется на разработке приложений для Internet и систем электронной коммерции, дает консультации по SQL Server с 1992 года и имеет сертификат MCSD. Оррин также часто выступает на конференциях и презентациях компании Microsoft. С ним можно связаться по адресу: [email protected].
Авторы, принимавшие участие в написании книги
Кари А. Фернандес (Kari A. Fernandez) - консультант отдела корпоративных технологий компании Trilogy Consulting (Ричмонд, шт. Виргиния). В 1994 году она окончила Высшую школу бизнеса штата Виргиния (Virginia Commonwealth University's School of Business) и получила степень бакалавра по специальности "информационные системы". Специализируется на разработке приложений баз данных для Web. В своей работе она использует Microsoft Windows NT Server, Internet Information Server, SQL Server и Visual Studio. Кари преуспела в быстрой разработке небольших приложений для Internet и intranet, а также была членом команды разработчиков крупномасштабных Web-проектов. Она помогает клиентам разрабатывать концепцию и архитектуру Web-серверов, а также структуру баз данных; обладает широкими познаниями в области использования Active Server Pages, объектов ActiveX и SQL Server наряду с такими Web-технологиями, как VBScript, JavaScript, ADO, HTML и Dynamic HTML. Она занималась разработкой Web-серверов, поддержкой и обеспечением их безопасности. Только благодаря постоянной поддержке мужа Тони и двух детей, Джона-Эрика и Патрика, Кари смогла достичь высот профессионального мастерства и в такой области, как написание компьютерных книг.
Кевин Вьерс (Kevin Viers) - менеджер отдела корпоративных технологий компании Trilogy Consulting. Окончил Университет Джеймса Мэдисона (James Madison University) и уже несколько лет является консультантом по вопросам проектирования, разработки и реализации программного обеспечения для различных фирм. Он имеет огромный опыт работы с PowerBuilder, а также использования SAP, Active Server Pages и Visual Basic. Кевин живет со своей женой Памелой и боксером Алли в Ричмонде, шт. Виргиния. С ним можно связаться по адресу: [email protected].
Лаура Джонс (Laura Jones) - консультант компании Triology Consulting. Эта компания недавно вошла в число 500 ведущих консультационных фирм США. В настоящее время Лаура является консультантом по вопросам администрирования баз данных компании Fortune Five.
Трой Д. Рэкли (Troy D. Rackley) - консультант отдела корпоративных технологий компании Trilogy Consulting. Имеет сертификат MCSD и всегда старается на один шаг опережать остальных. В настоящее время он специализируется на разработке многоуровневых Web-приложений для локальных сетей. Трой участвовал в написании книги Web Database Developer's Guide with Visual Basic 5. Он живет со своей женой Анеттой в Ричмонде, шт. Виргиния. С ним можно связаться по адресу: [email protected].
Анн Ягерлайн (Anne Yagerline) - главный инженер по разработке систем клиент/сервер фирмы IKON Technology Services (Мак-Лин (McLean), шт. Виргиния). Она разрабатывает приложения клиент/сервер для системы Windows для фирм, расположенных в Вашингтоне, округ Колумбия. Анн является сертифицированным специалистом Microsoft (MCSD) и имеет трехлетний опыт работы с Microsoft SQL Server. Связаться с ней можно по адресу: [email protected].
Майкл Йокка (Michael Yocca) - консультант по SQL Server и ERwin в Питтсбурге; специализируется на создании высокопрофессиональных проектов баз данных. Майкл является сертифицированным администратором SQL Server и регулярно пишет статьи для журнала Pinnacle SQL Professional.
Памяти Мардж Мейер (Marge Meyer).
Марк Шпеник
Моим трем замечательным детям: Абигайль, Эмме и Маргарет.
Оррин Следж
Благодарности
Хочу выразить благодарность Лайзе, своей жене и лучшему другу, за ее терпение и поддержку в то нелегкое время, когда я работал над этой книгой. Спасибо членам моей семьи, Бонни, Джону, Денису, Дэвиду, Ким, Адаму, Крису, Гэри, Дебби, Лайзе, Дэвиду, и всем племянникам и племянницам (которых у меня великое множество) за поддержку и понимание! Спасибо Сэму и Джонатану Мейерам (Meyer), а также Денису и Пэт Раймсам (Rimes) за слова ободрения и поддержки. Я благодарен своему отцу Джону и маме Анне-Джейн, которые всегда были для меня прекрасным примером для подражания.
Марк Шпеник
Хочу поблагодарить свою жену и детей за то, что они вынесли еще одну книгу! Спасибо всем сотрудникам издательства Sams Publishing, которые способствовали выходу этой книги в свет.
Оррин Следж