Поделиться через


Обновление

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

  • Известные проблемы, связанные с обновлением.

  • Задачи и вопросы, предшествующие обновлению.

  • Ссылки на методические разделы по обновлению компонента Ядро СУБД.

  • Ссылки на методические разделы по миграции баз данных в SQL Server.

  • Вопросы, касающиеся отказоустойчивых кластеров.

  • Задачи и вопросы, следующие за обновлением.

Известные проблемы, связанные с обновлением

Перед обновлением компонента Ядро СУБД ознакомьтесь с разделом Обратная совместимость компонента SQL Server Database Engine. Сведения о поддерживаемых сценариях обновления и известных проблемах обновления см. в разделе Поддерживаемые обновления версий и выпусков. Сведения об обратной совместимости других компонентов SQL Server см. в разделе Обратная совместимость.

Важное примечаниеВажно!

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

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

При обновлении до SQL Server 2012 предыдущей версии выпуска SQL Server Enterprise выберите «Enterprise Edition: лицензирование по числу ядер» и «Enterprise Edition». Эти выпуски Enterprise отличаются только режимом лицензирования. Дополнительные сведения см. в разделе Вычисление производительности выпуска SQL Server.

Контрольный список действий перед обновлением

Программа установки SQL Server поддерживает обновление предыдущей версии до SQL Server. Есть также возможность выполнить миграцию баз данных из предыдущих версий SQL Server. Миграция может быть произведена из одного экземпляра SQL Server в другой на том же компьютере или из экземпляра SQL Server на другой компьютер. Произвести ее можно следующими способами: при помощи мастера копирования баз данных, функций резервного копирования и восстановления, мастера импорта и экспорта служб SQL Server Службы Integration Services, а также при помощи массового экспорта и импорта.

Перед обновлением компонента Ядро СУБД выполните следующие действия.

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

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

  • При переходе с 64-разрядной версии SQL Server на 64-разрядную версию SQL Server 2012 службы Службы Analysis Services сначала должен быть обновлен компонент Ядро СУБД.

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

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

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

  • Убедитесь в том, что существующие системные базы данных SQL Server (master, model, msdb и tempdb) настроены для автоувеличения и что для них имеется достаточно места на диске.

  • Убедитесь в том, что все серверы баз данных имеют регистрационные данные для входа в базу данных master. Это важно для восстановления базы данных, поскольку системные регистрационные данные для входа хранятся в базе данных master.

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

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

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

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

Обновление компонента Database Engine

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

ПредупреждениеВнимание!

При обновлении версии SQL Server предыдущий экземпляр SQL Server будет перезаписан и перестанет существовать на компьютере. Перед обновлением создайте резервную копию баз данных SQL Server и других объектов, связанных с экземпляром предыдущей версии SQL Server.

Обновление компонента Ядро СУБД можно выполнить при помощи мастера установки SQL Server.

Уровень совместимости баз данных после обновления

После обновления уровни совместимости баз данных tempdb, model, msdb и Resource устанавливаются в значение 110. Системная база данных master сохраняет уровень совместимости, который она имела до обновления.

Если уровень совместимости пользовательской базы данных до обновления был 90 или 100, он остается неизменным. Если уровень совместимости до обновления был 80 или меньше, в обновленной базе данных он устанавливается в 90, что является минимально поддерживаемым уровнем совместимости в SQL Server 2012.

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

Новые пользовательские базы данных наследуют уровень совместимости базы данных model.

Миграция баз данных

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

Важное примечаниеВажно!

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

Дополнительные сведения см. в разделе Использование мастера копирования базы данных.

После обновления компонента Database Engine

После обновления компонента Ядро СУБД выполните следующие действия.

  • Повторно зарегистрируйте серверы. Дополнительные сведения о регистрации серверов см. в разделе Регистрация серверов электронной документации по SQL Server.

  • Для обеспечения семантической согласованности результатов запроса заполните полнотекстовые каталоги повторно.

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

    Дополнительные сведения см. в разделе sp_fulltext_catalog (Transact-SQL) электронной документации по SQL Server.

  • Для каждой из баз данных выполните инструкцию DBCC UPDATEUSAGE, чтобы исправить неверные счетчики строк и страниц.

  • Настройте установку SQL Server. Чтобы сократить уязвимую для атак контактную зону системы, SQL Server выборочно устанавливает и активирует ключевые службы и функции.

  • Проверьте или удалите подсказки USE PLAN, которые формируются SQL Server 2005 и применяются в запросах для секционированных таблиц и индексов.

    В SQL Server 2012 изменился способ обработки запросов к страницам секционированных таблиц и индексов. Запросы к секционированным объектам с указанием USE PLAN для планов, сформированных SQL Server 2005, могут оказаться несовместимыми с SQL Server 2012. После выполнения обновления до SQL Server 2012 рекомендуется выполнить следующие процедуры.

    Если подсказка USE PLAN указана непосредственно в запросе

    1. Удалите указание USE PLAN из запроса.

    2. Проверьте работу запроса.

    3. Если оптимизатор не выбрал подходящий план, настройте запрос и затем укажите подсказку USE PLAN с нужным планом запроса.

    Если подсказка USE PLAN указана непосредственно в структуре плана

    1. При помощи функции sys.fn_validate_plan_guide проверьте правильность структуры плана. Кроме того, проверить недопустимые планы можно в приложении Приложение SQL Server Profiler по событию Plan Guide Unsuccessful.

    2. Если структура плана неверна, удалите ее. Если оптимизатор не выбрал подходящий план, настройте запрос и приведите указание USE PLAN с нужным планом запроса.

    Если в структуре указания USE PLAN указан неверный план, это не приведет к ошибке выполнения. Вместо этого запрос будет скомпилирован без учета указания.

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

EXEC sp_fulltext_service 'pause_indexing', 1

Для возобновления заполнения полнотекстового индекса выполните следующую инструкцию.

EXEC sp_fulltext_service 'pause_indexing', 0

См. также

Справочник

Поддерживаемые обновления версий и выпусков

Основные понятия

Работа с несколькими версиями и экземплярами SQL Server

Обратная совместимость

Обновление реплицируемых баз данных