(Возврат на основную страницу)

 

Содержание номера за Апрель 2006 год

Битва тестовых результатов

Майкл Оти (Michael Otey)

Независимо от того, какие новые функции добавляют в СУБД, выход очередной версии всегда сопровождается всплеском результатов стандартного тестирования производительности. Проведение стандартизированных тестов — это серьезная работа в индустрии производ­ства СУБД, которая позволяет обратить на себя внимание, обеспечивает узнаваемость имени продукта, демонстрирует новые возможности, — все это сопровождает результаты, публикуемые тестирующими организациями.

После выпуска новой версии все поставщики СУБД, такие как Microsoft, IBM и Oracle, тратят сотни тысяч долларов на сборку систем и формирование команд, выполняющих тестирование по стандартам, определяемым Transaction Processing Performance Council (TPC). Всегда предполагается, что новая версия работает быстрее предыдущей, и при удачном стечении обстоятель­ств конкуренция начинает очередной виток.

В этом смысле SQL Server 2005 не является исключением. Не так давно Microsoft и SQL Server 2005 вошли в клуб миллионеров, продемонстрировав более 1 миллиона транзакций в минуту (tpmC), и достигли 1231433 tmpC в тесте TPC­C в категории без использования кластера. Это наилучший на настоящий момент результат на платформе Windows c использованием процессоров Itanium 2 от Intel. Тестирование производилось на 64­процессорном сервере HP Integrity Superdome, оснащенном процессорами 1,6 ГГц Itanium 2, на которых работала 64­разрядная версия SQL Server 2005 Enterprise Edition под управлением 64­разрядной версии Windows Server 2003 Datacenter Edition. Хотя этот результат несомненно очень хорош для SQL Server, он почти втрое ниже, чем у рекордсмена в этой категории — IBM's DB2 Universal Database (UDB) версии 8.2, получившей 3210540 tpmC. Рекорд был поставлен на 64­процессорном сервере от IBM (eServer p5 595), оснащенном процессорами POWER5 и работавшем под управлением AIX OS. Стоит отметить, что в каче­стве менеджера транзакций использовался COM+ от Microsoft. Объем оперативной памяти на сервере был вдвое больше, Windows не поддерживает более 1 Тб оперативной памяти, а тесты IBM исполнялись с памятью в 2 Тб.

Кроме того, SQL Server 2005 поставил новый рекорд в категории «цена­производительность» (на этот раз мировой рекорд, лучший результат на всех платформах в тесте TPC­C). Этот результат был получен с использованием 64­разрядной версии SQL Server 2005 Standard Edition, исполнявшейся на 1­процессорном сервере Dell 2800, оснащенном процессором Intel 2,8 ГГц Xeon и работавшем под управлением 64­разрядной Windows 2003 Standard Edition. Указанная система получила 38622 tmpC при стоимости 99 центов за транзакцию.

Хотя некоторые считают, что результаты стандарт­ных тестов бессмысленны, так как их условия не со­от­вет­ствуют производ­ственным реалиям или кон­кретным примерам работы, приводимым скептиками. Я же полагаю, что стандартные тесты TPC­C достаточно успешно демонстрируют способности масштабирования СУБД высшей категории, а результаты, касающиеся цены­производительности, позволяют оценить, насколько предложения поставщика близки к дей­ствительности. Тесты выполняются самими компаниями — поставщиками СУБД, что дает производителю возможность в полной мере использовать накопленные знания по применению продукта. Подобный подход позволяет исключить все кривотолки относительно того, насколько каче­ственно была сконфигурирована система.

Первый подход к тестированию SQL Server 2005 пройден. Но я уверен, что этим дело не ограничится. На подходе многоядерные процессоры, которые наверняка суще­ственно изменят ландшафт тестирования. Первые результаты тестов с использованием двуядерных Itanium­систем показывают примерно 60%­е увеличение процессорной мощи по сравнению с одноядерными системами. Наверняка новые двуядерные процессоры x64 AMD Opteron поставят ряд новых рекордов. Более подробную информацию о результатах тестирования и самих тестах можно найти по ссылке http:// www.tpc.org и на сайте Microsoft (http://www.Mic­ro­soft.com/sql/evaluation/compare/bench marks.mspx).

Безопасность в SQL Server 2005 и вокруг

Автор использует псевдоним yukondoit

В SQL Server 2005 появилось много новых функциональных возможностей безопасности. В этом смысле новая версия намного совершеннее, чем SQL Server 2000. Здесь есть чем похвалиться — улучшенная модель проверки подлинности, огромный выбор способов шифрования, подписи кода и значительно исправленный (уже не setuser!) набор возможностей контекста исполнения.

Насколько защищены ваши данные?

Конечные пользователи хотят, чтобы их данные были в безопасности. Для этого в SQL Server 2005 предусмотрено несколько уровней шифрования. Самый простой способ может оказаться не лучшим выбором, поскольку не способен обеспечить должную степень защиты.

Электронная документация представляет собой отличный ресурс, которым стоит воспользоваться, чтобы узнать синтаксис разных способов шифрования данных. Для ясности я буду время от времени делать ссылки на различные языковые конструкции, которые надо будет задей­ствовать. Но первичная цель этой статьи состоит в том, чтобы показать, какую безопасность гарантирует тот или иной выбранный механизм защиты.

Хорошо известно, что данные в SQL Server 2005 всегда следует защищать симметричным ключом. Симметричный ключ можно обезопасить посред­ством пароля, сертификата, асимметричного ключа или любого пользовательского симметричного ключа в зависимости от желаемого уровня защиты.

Чтобы принять правильное решение, конечному пользователю необходимо ответить на вопрос, от кого он стремится защитить свои данные:

•     уровень 2 — от атак, получающих доступ к файлам данных (защита данных в состоянии покоя);

•     уровень 1 — уровень 2 + от sysadmin;

•     уровень 0 — уровень 1 + от dbo.

Крайняя защита: только я могу видеть свои секреты

Для конечных пользователей, которым требуется безопасность уровня 0, необходима защита симметричного ключа только паролем. Это наиболее безопасный вариант, поскольку ни у sysadmin, ни у dbo нет никакого доступа к симметричному ключу, и данные дей­ствительно защищены. В состоянии покоя данные также защищены, поскольку, даже если атакующему удастся украсть файлы, он сможет их расшифровать, только узнав пароль. Некоторые могут счесть недостатком необходимость убеждаться в том, что ключ открыт, каждый раз, когда требуется расшифровать или зашифровать данные. Но это небольшая плата за то, что данные гарантированно полностью защищены. Системное представление sys.open_keys покажет все открытые ключи сеанса в каждый момент времени. Если ключ не открыт, следует выполнить следующую инструкцию DDL, чтобы его открыть:

OPEN SYMMETRIC KEY <èìÿ_êëþ÷à> Ã
DECRYPTION BY PASSWORD = '<ïàðîëü>'

Мой друг DBO: пусть знает мои секреты

Для конечных пользователей, которым нужен уровень 1 безопасности, требования можно немного ослабить. Симметричный ключ можно защитить сертификатом (или асимметричным ключом). Секретный ключ сертификата (или асимметричный ключ) необходимо защитить главным ключом базы данных, т. е. во время создания сертификата не надо задавать параметр EN­CRYP­TION BY PASSWORD:

CREATE CERTIFICATE c1 with subject = 'EncrCert'

Если у вас уже имеется сертификат (или асимметричный ключ), защищенный паролем, и вы хотели бы им воспользоваться, можно сменить защиту на главный ключ базы данных следующей инструкцией DDL:

ALTER CERTIFICATE c1 WITH PRIVATE Ã
KEY DECRYPTION BY PASSWORD = '<ïàðîëü>'

Это может быть не вполне ясно на интуитивном уровне, но если не задавать параметр ENCRYPTION BY PASSWORD с инструкцией ALTER CERTIFICATE, секретный ключ сертификата будет расшифрован с помощью указанного в параметре DECRYPTION BY PASSWORD пароля и заново зашифрован с помощью главного ключа базы данных (database master key).

Теперь наступает важная часть — защита его от sysadmin. Пользователю базы данных с высокими полномочиями или dbo необходимо убедиться, что главный ключ базы данных защищен только паролем. Во время создания главный ключ базы данных по умолчанию шифруется главным ключом службы. Шифрование главным ключом службы (Service Master Key) снимается явным образом с помощью следующей инструкции DDL:

ALTER MASTER KEY DROP ENCRYPTION Ã
BY SERVICE MASTER KEY

Если сделать так, владелец базы данных получит доступ к вашим данным, потому что он сможет воспользоваться главным ключом базы данных для расшифровки секретного ключа сертификата, который затем может быть применен для открытия симметричного ключа и расшифровки защищенных данных. Однако вы по­прежнему защищены от sysadmin, по­сколь­ку он должен быть способен открыть главный ключ базы данных в своем сеансе, а без пароля это сделать нельзя, так как вы удалили шифрование главным ключом службы.

Меня заботят только украденные данные

Для пользователей, которым подходит уровень 2 безопасности, все обстоит просто превосходно. Им надо шифровать данные симметричным ключом, который защищается сертификатом (или асимметричным ключом), как на уровне 1. Сертификат (или асимметричный ключ) защищен главным ключом базы данных, как было продемонстрировано ранее.

Важное отличие состоит в том, что владелец базы данных не должен удалять шифрование главного ключа базы данных главным ключом службы (который он получает по умолчанию во время создания), или же ему надо заново добавить шифрование главного ключа службы следующей инструкцией DDL:

ALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEY

Теперь у sysadmin есть доступ к главному ключу базы данных и к любой сущности (сертификату или асимметричному ключу), зашифрованной главным ключом базы данных. Разумеется, это означает, что ваши данные не защищены от sysadmin или от владельца базы данных, но данные в состоянии покоя защищены. Если кому­то удастся украсть файлы базы данных и подсоединить их к своему экземпляру SQL Server, он все равно не сможет расшифровать зашифрованные данные, потому что не знает пароля для симметричного ключа и у него нет доступа к ключам в иерархии, которые защищают симметричный ключ.

Для уровней безопасности 1 и 2 важно знать, защищен ли главный ключ базы данных главным ключом службы. Вам также следует помнить, что ваш уровень безопасности может упасть с 1 до 2, если владелец вашей базы данных решит вновь добавить главному ключу базы данных защиту главным ключом службы.

В заключение замечу, что всегда имеет место неизбежный конфликт между безопасностью и легкостью использования. Применение иерархии ключей в SQL Server 2005 слегка облегчает административные требования благодаря тому, что не требуется явно открывать симметричный ключ, используемый для защиты данных. Пользуясь этой возможностью, можно по­строить прозрачную систему шифрования, о которой я расскажу в следующей статье. Но в этом случае вы должны понимать, что ваши данные не защищены от владельцев баз данных и sysadmins. Шифрование симметричных ключей паролем может обеспечить суперзащиту вашим данным, но вам придется управлять открытием и закрытием ключа.

Выберите, что вам подходит лучше всего, но при этом помните о своих потребностях в защите и никогда не идите на уступки в безопасности ради простоты использования!

Дзен­буддизм рекурсии

Рекурсивное применение хранимых процедур SQL Server для прохождения по иерархиям

Крис Биренс (Chris Behrens)

Рекурсия — это программа, которая повторно вызывает саму себя до тех пор, пока выполняется некоторое условие. Есть одно важное направление, где разработчики баз данных SQL Server могут воспользоваться рекурсией: это прохождение по иерархиям — наборам элементов, связанных отношениями «родитель­ребенок».

Люди все время имеют дело с иерархиями. Каждый день возникает множе­ство задач, для которых надо определить приоритеты. Кроме того, большин­ство людей находится в рамках служебной иерархии. Классический способ представить иерархию внутри базы данных — добавить объекту столбец с ключом родителя (это просто первичный ключ объекта, играющего роль родителя по отношению к другому).

 

Ненавижу, когда он это делает

Том Моро (Tom Moreau)

Как обидно, когда SQL Server делает то, что должен, — лишает вас возможности отправить такой желанный отчет «я обнаружил ошибку!». Прочтите пояснения Тома Моро.

Время от времени происходят глюки, и вы умудряетесь сузить все до одной­един­ственной строки кода. Вы даже можете повторить проблемную ситуацию и понимаете, что нашли ошибку в SQL Server. Вот пример. Используя базу данных pubs, вы хотите получить список всех авторов, а именно: необходимо представить в одном столбце первую букву имени и фамилию и отсортировать все по фамилиям. Несладко вам придется.

 

Дайте­ка мне три верхних...

Том Моро (Tom Moreau)

Иногда запрос SELECT TOP не выходит на наилучшее значение. Как вам известно, реляционная модель имеет дело с множествами и совершенно равнодушна к порядку следования данных. С другой стороны, люди любят порядок — и некоторые более других (мы называем их «фанатами порядка», «хранителями анналов» и награждаем другими подобными прозвищами). В этой статье я отвечу на часто задаваемый вопрос: «Как получить верхние N строк для заданного значения столбца?». К примеру, как получить три самых недавних заказа не одного, а каждого клиента?

Оператор SELECT TOP появился в версии SQL Server 7.0 — отчасти как ответ на жалобы на то, что, уж если в Microsoft Access поддерживается TOP x, то почему не сделать это в SQL Server.

SQL Server 2005 Integration Services: задача ExecuteSQL. Часть 2*

На базе CTP апреля 2005

Алан Митчелл (Allan Mitchell)

* См. Алан Митчелл. SQL Server 2005 Integration Services: задача ExecuteSQL. Часть 1 // SQL Server для профессио­налов. 2006. № 1.

Во второй части статьи статьи о задаче ExecuteSQL, входящей в состав служб интеграции SQL Server Integration Services для версии SQL Server 2005, рассматриваются варианты ее применения.

Проходя по примерам применения задачи ExecuteSQL, охватим лишь те, которые, по­нашему мнению, следует знать и видеть. Таким образом, некоторые элементарные шаги, например присвоение значений переменным, мы покажем в первых примерах и опустим или заменим ссылками в последующих. В каждом из них используется база данных AventureWorks, поставляемая с SQL Server 2005.

Применение утилиты sqlcmd в SQL Server 2005

Грегори А. Ларсен (Gregory A. Larsen)

SQL Server 2005 предоставляет множе­ство новых утилит командной строки. Одна из них называется sqlcmd. Она используется для интерактивного запуска специальных запросов из командной строки, а также для выполнения сценариев, содержащих инструкции TÃSQL. Утилита sqlcmd значительно совершеннее по сравнению с osql и isql прежних выпусков SQL Server. В этой статье я расскажу о некоторых функциональных возможностях, которые она предлагает для администрирования SQL Server.

Утилита sqlcmd может применяться для интерактивного исполнения команд T-SQL из командной строки. Для интерактивного запуска утилиты sqlcmd необходимо активизировать сеанс командной оболочки, затем набрать «sqlcmd» в командной строке и нажать клавишу ввода. Запуск утилиты sqlcmd без каких­либо параметров открывает интерактивный сеанс, в котором команды TÃSQL будут выполняться в применяемом по умолчанию экземпляре SQL Server с использованием проверки подлинности Windows. Утилита sqlcmd может запускаться в разных экземплярах SQL Server с помощью переключателя ­S или команды :Connect.

Установка и развертывание SQL Server 2005

Роберт Битти (Robert Beatty)

Программа установки SQL Server 2005 проектировалась для минимизации числа ошибок инсталляции и совершен­ствования этого процесса. В этой статье изложены основные концепции, относящиеся к установке и развертыванию SQL Server 2005. Сюда вошли темы, посвященные выбору наиболее подходящего выпуска, требованиям к программному и аппаратному обеспечению и процессу обновления версии.

Переход к версии SQL Server 2005

SQL Server 2005 позволяет обновить версии SQL Server 7.0 Service Pack 4, SQL Server 2000 Service Pack 3 и более поздние. Прямое обновление версии SQL Server 6.5 не поддерживается; сначала необходимо перейти от SQL Server 6.5 к SQL Server 7.0 Service Pack 4, а затем воспользоваться программой установки SQL Server 2005 для перехода к версии SQL Server 2005.

Обновление версии требует тщательного планирования и исполнения. Необходимо продумать обновление данных, пакетов DTS, агентских заданий, учетных записей, установок репликации, установок отказо­устойчивых кластеров, объектов Analysis Services и полнотекстового поиска, конфигурации служб Reporting Ser­vices и Notification Services и т. д. Для помощи в проведении процесса обновления в SQL Server 2005 предусмотрено инструментальное сред­ство Upgrade Ad­visor, анализирующее систему и установленные компоненты SQL Server 2000 или SQL Server 7.0 и затем генерирующее отчет. В нем указаны вопросы, которые необходимо решить до или после перехода на SQL Server 2005.

Программа установки SQL Server 2005 была усовершен­ствована, чтобы упростить процесс обновления и уменьшить время нахождения в неработоспособном состоянии. Перед обновлением ядра СУБД необходимо сделать следующее:

•     Просмотреть требования к аппаратному и программному обеспечению для установки SQL Server 2005.

•     Просмотреть замечания относительно обратной совместимости SQL Server 2005 и внести соответ­ствующие правки в приложения и сценарии.

•     Запустить Upgrade Advisor для подготовки к обновлению и разрешить все препят­ствующие ему проблемы.

•     Снять резервные копии всех файлов баз данных того экземпляра, который будет обновляться, чтобы при необходимости их можно было бы полностью восстановить.

•     Запустить нужные команды DBCC для обновляемых баз данных, чтобы гарантировать их согласованное состояние.

•     Убедиться в том, что в конфигурации системных баз данных SQL Servermaster, model, msdb и tempdb — задан параметр autogrow; убедиться в том, что они размещены на носителе с необходимым дисковым простран­ством.

•     Отключить все хранимые процедуры, запускаемые при старте SQL Server, потому что процесс обновления будет останавливать и запускать службы обновляемого экземпляра SQL Server. Выполняемые при запуске хранимые процедуры могут блокировать процесс обновления.

•     Остановить репликацию и убедиться в том, что журнал репликаций пуст.

После того как этот подготовительный список будет полностью выполнен, можно запустить программу установки. Когда SQL Server 2005 будет установлен, можно переносить на экземпляр SQL Server 2005 пользовательские базы данных с помощью восстановления резервных копий или посред­ством подсоединения (attach) файлов БД. Затем можно зарегистрировать сервер, заполнить заново все полнотекстовые каталоги, обновить статистику и запустить утилиту конфигурирования контактной зоны (Surface Area Con­figuration) для уменьшения зоны уязвимости.

Прежде чем взглянуть на Upgrade Advisor, давайте вспомним те изменения в SQL Server 2005, о которых надо знать, чтобы лучше подготовиться к процессу обновления.

Устаревшие и отмененные функциональные возможности ядра базы данных

Устаревшие функциональные возможности SQL Server 2005 включают те функции, которые будут удалены, — одни в непосред­ственно следующем выпуске, другие позднее. Ниже приведены некоторые из устаревших функций, которые следует заменить рекомендованными сред­ствами.

•     Инструкции DUMP и LOAD устарели, вместо них рекомендуется применять соответ­ственно инструкции BACKUP и RESTORE.

•     Инструкция SETUSER устарела, вместо нее рекомендуется применять инструкцию EXECUTE AS.

•     Хранимая процедура sp_addtype устарела, вместо нее следует применять CREATE TYPE. Следует также избегать хранимых процедур sp_attach_db и sp_attach_single_file_db, вместо них следует использовать инструкцию CREATE DATABASE с параметрами FOR ATTACH или FORATTACH_REBUILD_LOG.

•     Желательно избегать применять хранимые процедуры sp_renamedb, sp_dboption и sp_resetstatus, вместо них рекомендуется использовать инструкцию ALTERDATABASE.

•     Необходимо избегать применения хранимых процедур полнотекстового поиска, таких как  sp_ful­ltext_catalog, вместо них рекомендуется использовать инструкции CREATE/ALTER/DROP FULLTEXT CA­TALOG и CREATE/ALTER/DROP FULLTEXT INDEX.

•     Не следует применять хранимые процедуры системы безопасности, такие как sp_addlogin, sp_adduser и т. д., вместо них рекомендуется использовать инструкции CREATE LOGIN, CREATE USER, CREATEROLE и т. д.

•     Системные таблицы заменяются представлениями, чтобы сохранить обратную совместимость. Рекомендованный подход заключается в использовании новых представлений системного каталога. Непосред­ственные изменения системных таблиц более не допускаются.

Примечание. Можно воспользоваться классом событий Deprecation в SQL Profiler, чтобы проследить за применением устаревших функций.

SQL Server 2005 не поддерживает некоторые функциональные возможности прежних выпусков:

•     SQL Server 2005 более не включает English Query.

Такие инструменты, как isql.exe и rebuildm.exe, также не включены, вместо них следует использовать sqlcmd.exe и setup.exe. Если требуется перестроить базу данных master или системный реестр, запустите из командной строки программу установки SQL Server 2005 setup.exe и задайте необходимые параметры. В свое время эти «необходимые параметры» выпили немало моей крови1.

Демонстрационные базы данных Northwind и Pubs заменены новой демонстрационной базой данных AdventureWorks. (Те, кто не мыслит своей жизни без Pubs могут пойти по ссылке http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212­0356­46a0­8daeebc53a68034&DisplayLang=en и скачать ее.)

Параметр allow updates хранимой процедуры sp_con­figure еще присут­ствует, но, поскольку изменения системных таблиц не поддерживаются, этот параметр потерял смысл.

Meta Data Services 3.0 является компонентом Micro­soft SQL Server 2000, который более не доступен в SQL Ser­ver 2005. Переход на новую версию не удаляет суще­ствующие таблицы репозитория в базе данных msdb. Однако механизм репозитория, который считывает и обновляет таблицы, после обновления будет недоступен, так что таблицы репозитория также будут недоступны. Удаление неиспользуемых таблиц надо провести вручную. У таблиц репозитория имеется префикс Rtbl.

Несовместимые изменения и изменения поведения СУБД

Где только возможно, SQL Server 2005 обеспечивает обратную совместимость, так что приложения можно легко перевести на SQL Server 2005. Однако для лучшей поддержки некоторых новых функций и более точного позиционирования продукта специалисты Microsoft ввели ряд изменений в поведении SQL Server 2005, которые могут потребовать корректировок сущестующего кода.

•     SQL Server 2005 добавляет еще один столбец trig­ger_schema в результирующий набор, который возвращает системная хранимая процедура sp_help­trigger.

•     В SQL Server 2000 ключевое слово WITH для введения указаний оптимизатору на уровне таблиц является необязательным. Однако в SQL Server 2005 ключевое слово WITH обязательно указывать за исключением односложных подсказок. Например, запрос SELECT * FROM master.dbo.sysobjects (TABLOCK, HOLDLOCK) будет работать в SQL Server 2000 но не в SQL Server 2005. Чтобы он действовал в SQL Server 2005, необходимо либо указать предложение WITH, либо оставить только одно указание.

•     В SQL Server 2000 названия столбцов в предложении ORDER BY разрешаются в соответ­ствии со столбцами, указанными в списке clause SELECT, независимо от того, имеются ли у них квалификации. Однако в SQL Server 2005 квалифицированные названия столбцов и псевдонимы в предложении ORDER BY разрешаются в соответ­ствии со столбцами таблиц, перечисленных в предложении FROM. Рассмотрим следующий сценарий Transact­SQL:

USE [Tempdb];
GO
IF OBJECT_ID('dbo.dblTest')
Ã
IS NOT NULL DROP TABLE dbo.dblTest;
GO
CREATE TABLE dbo.dblTest (col1 int,
Ã
col2 varchar(20));
GO
INSERT INTO dbo.dblTest SELECT 1, 'X';
INSERT INTO dbo.dblTest SELECT 2, 'U';
INSERT INTO dbo.dblTest SELECT 3, 'A';
GO
SELECT col1 AS 'col2'
Ã
FROM dbo.dblTest a ORDER BY a.col2;
GO

•     Если запустить этот сценарий в SQL Server 2000 и в SQL Server 2005, будут получены разные выходные данные в SQL Server 2000 и SQL Server 2005. В SQL Server 2000 псевдонимы таблиц игнорируются, и столбец a.col2, указанный в предложении ORDER BY, отображается на псевдоним столбца в списке SELECT, и потому возвращается 1, 2 и 3. С другой стороны, SQL Server 2005 учитывает псевдонимы таблиц, сортирует результаты по столбцу col2 в таблице dbo.tblTest и потому возвращает 3, 2 и 1.

Программа Upgrade Advisor в SQL Server 2005

Как упоминалось выше, можно воспользоваться инструментальным сред­ством Upgrade Advisor для анализа системы и установленных компонентов SQL Server 2000 и SQL Server 7.0, а также для определения тех во­просов, которые необходимо решить до или после перехода на версию SQL Server2005. Программу Upgrade Advisor составляют два компонента.

•     Мастер анализа исследует систему и сохраняет результаты в файле XML. Он не меняет данные и не вносит изменения в настройки компьютера.

•     Обозреватель отчетов считывает результаты из файла XML, сгенерированного мастером анализа, и отображает результаты исследования. Он также позволяет отсортировать и отфильтровать результаты. Каждый вопрос обновления версии на экране обозревателя отчетов содержит ссылки «Подробности данного вопроса» и «Как разрешить этот вопрос», которые можно щелкнуть, чтобы получить более подробные сведения о данной проблеме и о шагах, которые необходимо предпринять для ее разрешения.

Документация Upgrade Advisor представлена разделом о разрешении вопросов обновления версии, в котором задей­ствованы такие категории, как вопросы обновления Analysis Services, DTS и СУБД.

Обратите внимание, что программа Upgrade Ad­vi­sor не устанавливается в ходе инсталляции SQL Server 2005. Ее необходимо загрузить отдельно с заставочного экрана (splash.hta), щелкнув ссылку «Установить SQL Server Upgrade Advisor».

1 Вот как выглядит команда по перестройке Master для поддержки другой Collation: start /wait d:\setup.exe /qn INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=myPassword SQLCOLLATION=Cyrillic_General_CI_AS. — Прим. ред.

 

(Возврат на основную страницу)

Hosted by uCoz