Вопросы использования тестовых серверов

Одним из важных преимуществ помощника по настройке Компонент Database Engine является возможность использовать тестовый сервер для настройки базы данных на рабочем сервере. Благодаря этому можно перенаправить работу по настройке базы данных на тестовый сервер, не копируя на него данные с рабочего сервера.

ПримечаниеПримечание

Возможность выполнения настройки на тестовом сервере не поддерживается в графическом интерфейсе помощника по настройке Компонент Database Engine.

Чтобы успешно использовать эту возможность, просмотрите рекомендации, приведенные в следующих разделах.

Установка среды тестового или рабочего сервера

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

  • Настроить базу данных с рабочего сервера на тестовом сервере можно только в том случае, если активирована расширенная хранимая процедура xp_msver. Помощник по настройке компонента Компонент Database Engine использует эту расширенную хранимую процедуру при настройке тестового сервера для выборки числа процессоров и доступной памяти рабочего сервера. Если процедура xp_msver не активирована, помощник по настройке Компонент Database Engine подразумевает, что характеристики оборудования те же, что и на компьютере, на котором запущен помощник по настройке Компонент Database Engine. Если характеристики оборудования того компьютера, на котором выполняется помощник по настройке Компонент Database Engine, недоступны, то предполагается наличие одного процессора и 1024 МБ оперативной памяти. Эта расширенная хранимая процедура включается по умолчанию при установке SQL Server. Дополнительные сведения см. в разделах Настройка контактной зоны и xp_msver (Transact-SQL).

  • Помощник по настройке Компонент Database Engine предполагает, что выпуски SQL Server на тестовом и рабочем сервере совпадают. Если это два разных выпуска, приоритет получает выпуск на тестовом сервере. Например, если тестовый сервер работает под управлением SQL Server Standard Edition, помощник по настройке компонента Компонент Database Engine не включает в свои рекомендации индексированные представления, секционирование и операции, выполняющиеся в режиме «в сети», даже если рабочий сервер работает под управлением SQL Server Enterprise Edition.

О поведении тестового или рабочего сервера

  • При составлении рекомендаций помощник по настройке Компонент Database Engine учитывает различия характеристик оборудования рабочего и тестового серверов. При этом он составляет такие рекомендации, как если бы настройка выполнялась только на рабочем сервере.

  • Выполнение помощника по настройке Компонент Database Engine может привести к повышению нагрузки на рабочий сервер из-за сбора метаданных и составления необходимой для настройки статистики.

  • Помощник по настройке Компонент Database Engine не копирует реальные данные с рабочего сервера на тестовый сервер. Он копирует только метаданные баз данных и необходимую статистику.

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

Вопросы, относящиеся к базе данных оболочки

  • После настройки помощник по настройке Компонент Database Engine должен удалить все метаданные, созданные им на тестовом сервере во время настройки, в том числе базу данных оболочки. Если выполняется несколько сеансов настройки, в которых используются те же рабочий и тестовый серверы, можете сохранить базу данных оболочки для экономии времени. Укажите для этого во входном XML-файле дочерний элемент RetainShellDB и другие дочерние элементы родительского элемента TuningOptions. Если они будут указаны, помощник по настройке Компонент Database Engine сохранит базу данных оболочки. Дополнительные сведения см. в разделе Справочник по входным XML-файлам (помощник по настройке ядра СУБД).

  • Базы данных оболочки могут остаться на тестовом сервере после успешного сеанса настройки тестового или рабочего сервера, даже если не был указан подэлемент RetainShellDB. Эти нежелательные базы данных оболочки могут повлиять на последующие сеансы настройки и должны быть удалены до следующего сеанса настройки тестового или рабочего сервера. Кроме того, если сеанс настройки непредвиденно завершится, базы данных оболочки и объекты внутри них могут остаться на тестовом сервере. Перед началом нового сеанса настройки тестового или рабочего сервера необходимо удалить эти базы данных и объекты.

Вопросы, относящиеся к процессу настройки

  • Пользователь должен проверять журнал настройки на предмет ошибок, обусловленных различиями рабочего и тестового серверов, а также ошибок, ставших результатом копирования метаданных с рабочего сервера на тестовый. Например, на тестовом сервере может быть не задано имя входа пользователя. В этом случае настройка событий рабочей нагрузки, создаваемых в контексте этого имени входа, может оказаться невозможной. Используйте для просмотра журнала настройки графический интерфейс помощника по настройке Компонент Database Engine. Дополнительные сведения см. в разделе Просмотр и работа с выходными данными помощника по настройке ядра СУБД.

  • Если помощник по настройке Компонент Database Engine не может настроить большое число событий из-за отсутствия объектов в базе данных оболочки, созданной им на тестовом сервере, пользователь должен проверить журнал настройки. События, которые не могут быть настроены, указываются в этом журнале. Чтобы успешно настроить базу данных на тестовом сервере, пользователь должен создать объекты, отсутствующие в базе данных оболочки, и запустить новый сеанс настройки.

  • Если на тестовом сервере уже существует база данных с тем же именем, помощник по настройке Компонент Database Engine не копирует метаданные, а продолжает настройку, собирая статистику по мере надобности. Это полезно, если пользователь перед вызовом помощника по настройке Компонент Database Engine уже создал на тестовом сервере базу данных и скопировал соответствующие метаданные.

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

    • Пользователям могут соответствовать на серверах разные планы запросов с параметром DATE_CORRELATION_OPTIMIZATION.

    • В скрипт рекомендаций помощник по настройке Компонент Database Engine может включить совет удалить индексированные представления, принудительно применяющие параметр DATE_CORRELATION_OPTIMIZATION.

    Иными словами, помощнику по настройке Компонент Database Engine известны только издержки, связанные с индексированными представлениями статистики корреляций, но не их достоинства, поэтому соответствующие рекомендации иногда лучше пропускать. Помощник по настройке компонента Компонент Database Engine не всегда рекомендует выбрать определенные индексы, повышающие эффективность работы при указанном параметре DATE_CORRELATION_OPTIMIZATION, как, например, кластеризованные индексы столбцов типа datetime.

    Чтобы определить, основано ли представление на статистике корреляций, выберите столбец is_date_correlation_view представления каталога sys.views.