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


Известные проблемы с настройкой и миграцией SQL Server 2012

В этой статье описываются проблемы с настройкой и миграцией SQL Server 2012.

Исходная версия продукта: SQL Server
Исходный номер базы знаний: 2681562

Проблемы с настройкой и миграцией, относящиеся к SQL Server 2012

  • Общие заметки

    • По умолчанию Windows 8 включает платформа .NET Framework 4.0. Windows 8.1 и Windows Server 2012 R2 включают платформа .NET Framework 4.5, а Windows 10 и Windows Server 2016 включают платформа .NET Framework 4.6. Однако следующие компоненты SQL Server 2012 зависят от платформа .NET Framework 3.5:

      • ЯДРО СУБД SQL Server 2012
      • Служба репликации
      • SQL Server Data Tools
      • Службы Data Quality Services
      • Master Data Service
      • Собственный режим службы Reporting Service
      • Компонент Full-text Search

      Поэтому рекомендуется включить платформу .NET 3.5, прежде чем устанавливать SQL Server 2014 или SQL Server 2012 в автономной или кластеризованной среде, чтобы предотвратить возможные сбои установки SQL Server.

      Дополнительные сведения о включении платформы .NET 3.5 см. в следующих статьях:

  • Некоторые проблемы с установкой и настройкой SQL Server 2012 устранены в последних накопительных обновлениях ДЛЯ SQL Server 2012. Поэтому рекомендуется создать пакет установки slipstream, включающий SQL Server 2012 и CU3 или более поздней версии обновления с помощью параметра /Update. Дополнительные сведения о том, как это сделать, см. в статье sql Server 2012 Setup just get smarter or How to patch SQL Server 2012 Setup with an update setup package (using UpdateSource для получения интеллектуальной установки).

Проблемы с настройкой SQL Server 2012, которые могут возникать, когда платформа .NET Framework 3.5 не включен

Проблема 1. Неполный отказоустойчивый кластер SQL или автономные установки

Симптомы

На серверах, на которых платформа .NET Framework 3.5 еще не установлен или серверы, на которых ограничен доступ к Интернету, программа установки SQL Server 2012 не устанавливает компоненты, зависящие от платформа .NET Framework 3.5. Поэтому установка SQL Server 2012 может быть неполной.

Примечание.

Windows 8.1 или Windows Server 2012 R2 не позволит продолжить установку.

Сообщение об ошибке, похожее на следующее, может отображаться во время установки SQL Server 2012, если платформа .NET Framework не включен.

Снимок экрана: сообщение об ошибке установки SQL Server 2012: ошибка при включении функции Windows.

Предотвращение

Чтобы предотвратить эту проблему, включите платформа .NET Framework 3.5 на всех узлах кластера или на автономном сервере перед установкой SQL Server 2012.

Решение

Чтобы устранить эту проблему на автономном сервере, включите платформа .NET Framework 3.5, а затем снова запустите программу установки, чтобы добавить дополнительные функции.

Чтобы устранить эту проблему в кластеризованной среде, удалите неполные экземпляры SQL Server 2012, включите платформа .NET Framework 3.5 и переустановите SQL Server 2012.

Примечание.

В кластеризованной среде нельзя добавить функции, пропущенные при выполнении программы установки SQL Server 2012.

Чтобы устранить эту проблему на автономном сервере, включите платформа .NET Framework 3.5, а затем снова запустите программу установки SQL Server.

Проблема 2. Пользователям будет предложено скачать и установить платформа .NET Framework 3.5.

Симптомы

Пользователям может быть предложено скачать и установить платформа .NET Framework 3.5 при попытке установить накопительный пакет обновления 1 (CU1) или CU2. Эта проблема может возникнуть, даже если установленные компоненты не зависят от платформа .NET Framework 3.5.

В этой ситуации может появиться сообщение об ошибке, похожее на следующее.

Снимок экрана: сообщение об ошибке установки .Net Framework 3.5: не удалось установить следующую функцию.

Причина

Это известная проблема в SQL Server 2012 CU1 и CU2.

Примечание.

Эта проблема устранена в накопительном обновлении 3 для SQL Server 2012 и более поздних версий.

Предотвращение

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

  • Включите платформа .NET Framework 3.5, примените пакет обновления CU1 или пакет обновления CU2, а затем отключите платформа .NET Framework 3.5.

    Примечание.

    Вы должны отключить только платформа .NET Framework 3.5, если установка не включает компоненты, зависящие от платформа .NET Framework 3.5.

  • Установите SQL Server 2012 из слипстримного пакета установки, включающего SQL Server 2012 и CU3 или более поздней версии.

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

Проблема 3. Оповещения о режиме совместимости приложений Windows отображаются во время автоматической установки

Симптомы

В Windows 8.1, Windows 8, Windows Server 2012 R2, Windows Server 2012, Windows 10 и Windows Server 2016 платформа .NET Framework — это компонент FOD. Кроме того, политики системы Windows 10, Windows 8.1 и Windows 8 и Windows Server 2016, Windows Server 2012 R2 и Windows Server 2012 требуют оповещения пользователей при включении компонентов FOD.

Примечание.

По умолчанию в Windows 8 и Windows Server 2012 включена платформа .NET Framework 4.0. Кроме того, в Windows 8.1 и Windows Server 2012 R2 включена платформа .NET Framework 4.5, а в Windows 10 и Window Server 2016 включена платформа .NET Framework 4.6. Однако платформа .NET Framework 3.5 отключен.

Поэтому во время автоматической установки может отображаться предупреждение о режиме совместимости программы, которое предлагает пользователям скачать и установить платформа .NET Framework 3.5. Эти оповещения о совместимости программ не могут быть отключены. Снимок экрана: предупреждения показаны следующим образом:

Windows Server 2012 R2 и Windows Server 2012 — Full Server

Снимок экрана: сообщение об ошибке установки .Net Framework 3.5 на полном сервере: не удалось установить следующую функцию.

Windows Server 2012 R2 и Windows Server 2012 — Серверная ядро

Снимок экрана: роли и компоненты не могут быть автоматически установлены с помощью ошибки компонента Windows.

Предотвращение

Чтобы предотвратить эту проблему, пользователь может включить платформа .NET Framework 3.5 перед выполнением автоматической установки.

Дополнительные проблемы с настройкой SQL Server 2012

Проблема 1. При попытке установить второй экземпляр SQL Server 2012 может быть создано необработанное исключение платформа .NET Framework

Симптомы

Рассмотрим следующий сценарий:

  • Экземпляр SQL Server 2012 устанавливается.
  • При установке экземпляра SQL Server 2012 создается файл конфигурации пользователя платформа .NET Framework 4.0. Кроме того, во время установки включена платформа .NET Framework 3.5.
  • Вы пытаетесь установить второй экземпляр SQL Server 2012.

В этом сценарии может быть создано необработанное исключение. Вы можете получить примерно такое сообщение об ошибке:

Произошла ошибка при создании обработчика раздела конфигурации для userSettings/Microsoft.SqlServer.Configuration.LandingPage.Properties.Settings: не удалось загрузить файл или систему сборки, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxx или одну из зависимостей. Системе не удается найти указанный файл. (C:\Users\Administrator\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ ryspccglaxmt4nhllj5z3thycltsvyx\11.0.0.0\user.config)

Причина

В Windows 8 и Windows Server 2012 эта проблема возникает, так как платформа .NET Framework 4.0 включена по умолчанию в Windows 8 и Windows Server 2012. Поэтому при установке SQL Server 2012 создается файл конфигурации пользователя платформа .NET Framework 4.0. Кроме того, во время установки включена платформа .NET Framework 3.5.

При попытке установить второй экземпляр SQL Server 2012 установка использует платформа .NET Framework 2.0, так как платформа .NET Framework 3.5 уже установлен. Это конфликтует с параметром в файле конфигурации пользователя, что приводит к необработанным исключениям.

В Windows 8.1 и Windows Server 2012 R2 эта проблема возникает, так как платформа .NET Framework 4.5 включена по умолчанию в Windows 8.1 и Windows Server 2012 R2. Поэтому при установке SQL Server 2012 создается файл конфигурации пользователя платформа .NET Framework 4.5. Кроме того, во время установки включена платформа .NET Framework 3.5.

При попытке установить второй экземпляр SQL Server 2012 установка использует платформа .NET Framework 2.0, так как платформа .NET Framework 3.5 уже установлен. Этот конфликт с параметром в конфигурации пользователя вызывает необработанное исключение.

В Windows 10 и Windows Server 2016 эта проблема возникает, так как по умолчанию включена платформа .NET Framework 4.6. Поэтому при установке SQL Server 2012 создается файл конфигурации пользователя платформа .NET Framework 4.6. Кроме того, во время установки включена платформа .NET Framework 3.5.

При попытке установить второй экземпляр SQL Server 2012 установка использует платформа .NET Framework 2.0, так как платформа .NET Framework 3.5 уже установлен. Это конфликтует с параметром в файле конфигурации пользователя, что приводит к необработанным исключениям.

Предотвращение

Чтобы предотвратить эту проблему, удалите файл User.config в следующей папке перед установкой второго экземпляра SQL Server 2012:

%userprofile%\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0

Решение

Примечание.

Эта проблема устранена в Microsoft SQL Server 2012 с пакетом обновления 1 (SP1).

Если первый экземпляр уже установлен с пакетом обновления 1, эта проблема не возникает. Если на первом экземпляре не удается установить пакет обновления 1, выполните одно из следующих действий:

  • Установите второй экземпляр SQL Server 2012 из слиппотированного пакета установки, включающего SQL Server 2012 и Microsoft SQL Server 2012 с пакетом обновления 1 (SP1). После установки нового экземпляра необходимо применить sql Server 2012 с пакетом обновления 4 или более поздней версии. Дополнительные сведения см. в разделе Как получить последний пакет обновления для SQL Server 2012.

  • Предварительное исправление с помощью файлов SQL Server 2012 с пакетом обновления 4 (SP4) и установите SQL Server 2012:

    • На компьютере, на котором не установлен RTM SQL Server 2012:

      1. Скачайте и установите SQL Server 2012 с пакетом обновления 4 (SP4).

      2. На экране "Условия лицензии" установите флажок "Принять условия лицензии" и нажмите кнопку "Далее".

        Примечание.

        Файлы установки устанавливаются и мастер установки автоматически закрывается.

      3. Проверьте установку. Для этого запустите или удалите программы и убедитесь, что перечислены следующие элементы:

        • Программа установки Microsoft SQL Server 2012 версии 11.0.7001.0
        • Две записи для Microsoft Visual C++.
    • На компьютере с существующим экземпляром RTM SQL Server 2012:

      1. Скачайте и установите SQL Server 2012 с пакетом обновления 4 (SP4).

      2. Извлеките файлы с пакетом обновления 4 (SP4) в локальную папку. Например, извлеките файлы с пакетом обновления 4 (SP4) в c:\sp4.

        Примечание.

        В этом сценарии невозможно запустить программу установки SQL Server 2012 с пакетом обновления 4 (SP4).

      3. В папке, в которую вы извлекли файлы с пакетом обновления 4 (SP4), дважды щелкните SqlSupport.msi и нажмите кнопку "Да".

      4. Проверьте установку. Для этого запустите или удалите программы и убедитесь, что программа установки Microsoft SQL Server 2012, версия 11.0.7001.0 указана.

        Примечание.

        Проверьте раздел "Инструкции по установке" на странице скачивания SQL Server 2012 с пакетом обновления 4 (SP4), чтобы определить правильное скачивание сервера.

Проблема 2. Невозможно установить отказоустойчивый кластер SQL Server 2012 с включенной функцией общей папки файлового потока в Windows Server 2012 R2 или Windows Server 2012

Симптомы

При попытке установить новый отказоустойчивый кластер SQL Server 2012 с FileStream поддержкой функции общего доступа в Windows Server 2012 может появиться сообщение об ошибке, похожее на следующее:

Произошла ошибка, присвоив закрытому свойству Security0x20Descriptor значение System.Byte[], для ресурса SQL Server Filestream share (FILESTREAM). Ошибка: произошел сбой вызова кода кластера от поставщика. Сообщение об исключении: не найдено.

Причина

Эта проблема возникает, так как поддержка свойства дескриптора безопасности была удалена в Windows Server 2012.

Предотвращение

Чтобы предотвратить эту проблему, установите отказоустойчивый кластер без FileStream включения компонента Share. После завершения установки включите FileStream компонент Share.

Решение

Примечание.

Эта проблема устранена в Microsoft SQL Server 2012 с пакетом обновления 1 (SP1).

Чтобы устранить эту проблему, удалите экземпляр отказоустойчивого кластера с помощью команды "Добавить или удалить программы", а затем установите отказоустойчивый кластер без FileStream включения функции общего доступа. После завершения установки включите FileStream компонент Share.

Проблема 3. Ошибка во время установки SQL Server 2012: "Попытка загрузить программу с неправильным форматом"

Симптомы

Рассмотрим следующий сценарий:

  • Вы устанавливаете 64-разрядную версию Windows 10, Windows 8.1 или Windows 8.
  • Вы пытаетесь установить SQL Server 2012 в режиме Windows в Windows (WoW).
  • Установка SQL Server 2012 включает службы Reporting Services.

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

Сбой операции с 0x8007000B
Была сделана попытка загрузить программу с неверным форматом.

Снимок экрана: сообщение об ошибке ошибки операции.

Предотвращение

Чтобы предотвратить эту проблему, установите компонент IIS ASP.NET 3.5 с помощью диспетчер сервера перед установкой SQL Server 2012. Дополнительные сведения см. в разделе ASP.NET 2.0 и ASP.NET 3.5 не работают после удаления ASP.NET 4.5 в Windows 8 или Windows Server 2012.

Проблема 4. Невозможно установить экземпляр отказоустойчивого кластера SQL Server 2012 выпуск Enterprise

Симптомы

Рассмотрим следующий сценарий:

  • Выполните одно из следующих действий:

    • Вы создаете пакет установки слипстримой, включающий SQL Server 2012 и CU1.
    • Перед установкой SQL Server 2012 перед установкой SQL Server 2012 необходимо предварительно установить накопительный пакет обновления 1 (CU1).
  • Установите SQL Server 2012 с помощью параметра UIMODE=EnableUIOnServerCore .

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

    Снимок экрана: страница

    Сведения об ошибке выглядят следующим образом.

    Снимок экрана: сведения об ошибке в диалоговом окне проверки правила.

Причина

Эта проблема возникает, так как DQ компонент неявно выбирается вместе с компонентом engine во время установки.

Примечание.

Эта DQ функция не поддерживается в режиме основных серверных компонентов.

Решение

Примечание.

Эта проблема устранена в SQL Server 2012 RTM CU3 и SQL Server 2012 с пакетом обновления 1 (SP1).

Чтобы устранить эту проблему, выполните следующие действия.

  • Создайте пакет установки с скольжения, включающий SQL Server 2012 и CU3.
  • Предварительно исправите файлы поддержки установки, выполнив пакет установки CU3.

Проблема 5. Сообщение об ошибке при попытке обновить узел кластера до SQL Server 2012: "Общие свойства ресурса "Имя сети SQL (<ИМЯ> SQL) не удалось сохранить".

Дополнительные сведения об этой проблеме и ее устранении см. в разделе "Общие свойства для ресурса "Имя сети SQL ()" не удалось сохранить" при попытке обновить узел кластера до SQL Server 2012.

Проблема 6. Сообщение об ошибке при использовании API OpenSQLFileStream: "System.ComponentModel.Win32Exception (0x80004005): запрос не поддерживается".

Симптомы

Рассмотрим следующий сценарий:

  • Экземпляр SQL Server 2008 R2 устанавливается на сервере под управлением Windows Server 2012.
  • Вы обновляете экземпляр SQL Server 2008 R2 до SQL Server 2012 с пакетом обновления 1 (SP1).
  • Вы используете OpenSQLFileStream API.

В этом случае появляется сообщение об ошибке, подобное указанному ниже.

System.ComponentModel.Win32Exception (0x80004005): запрос не поддерживается.

Причина

Эта проблема возникает, так как обновление SQL Server 2012 неправильно удаляет следующий раздел реестра:

HKEY_LOCALMACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList\FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT

Обходное решение

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

 HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList
 Dword: FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT
 Value: 0x92560

См. также