Повторное создание разделов реестра, относящихся к конкретным ресурсам, вручную для ресурсов кластера SQL Server

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

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

Сводка

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

Дополнительная информация

Каждый ресурс, который перечисляет администратор кластера, имеет раздел реестра, расположенный в разделе HKEY_LOCAL_MACHINE (HKLM)HKLM\Cluster\Resources\GUID. Идентификатор GUID создается при добавлении ресурса и отличается на разных компьютерах. Каждый ключ содержит значение Name, содержащее имя ресурса, отображаемое администратором кластера. Под каждым ключом ресурса есть подраздел Parameters, в котором ресурс может хранить сведения о параметрах, относящихся к конкретному ресурсу.

SQL Server, агент SQL Server и полнотекстовый поиск хранят сведения в подразделе Parameters. Если сведения отсутствуют, при попытке перевести ресурс в режим "в сети" в файл журнала кластера регистрируются такие ошибки:

SQL Server: [sqsrvres] Не удается прочитать свойство VirtualServerName. Ошибка: d.
Полнотекстовый поиск экземпляра службы поиска (Майкрософт): во время операции в сети произошла ошибка для экземпляра полнотекстового поиска: 80070002 — система не может найти указанный файл.

Повторное создание ресурса вручную

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

SQL Server

Имя: Имя_экземпляра
Тип: REG_SZ
Значение: имя экземпляра SQL Server, который представляет виртуальный сервер. Используйте MSSQLSERVER, чтобы использовать экземпляр по умолчанию.

Имя: VirtualServerName
Тип: REG_SZ
Значение: имя виртуального сервера, назначенное серверу.

агент SQL Server

Имя: Имя_экземпляра
Тип: REG_SZ
Значение: имя экземпляра SQL Server, который представляет виртуальный сервер. Используйте MSSQLSERVER, чтобы использовать экземпляр по умолчанию.

Имя: VirtualServerName
Тип: REG_SZ
Значение: имя виртуального сервера, назначенное серверу.

Имя: ApplicationName
Тип: REG_SZ
Значение: SQL Server$instance_name, где instance_name — это используемый экземпляр SQL Server. Чтобы использовать экземпляр по умолчанию, используйте SQLServer.

Имя: ApplicationPath
Тип: REG_SZ
Значение: полный путь к папке, содержащей файлы данных Fulltext. Как правило, он находится в \MSSQL\FTDATA для экземпляра по умолчанию и в MSSQL$имя_экземпляра\FTDATA для именованного экземпляра.

Добавление разделов реестра с помощью служебной программы Cluster.exe

Важно!

Этот метод можно использовать только в критической ситуации. Например, этот метод можно использовать, если не удается запустить экземпляр SQL Server. Однако для повторного создания виртуального сервера можно использовать программу установки.

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

cluster res "ResourceName" /priv KeyName = KeyValue:STR

Примечание.

  • Необходимо заменить ResourceName именем соответствующего ресурса SQL Server, ресурса агент SQL Server или ресурса поиска Full-Text.
  • Необходимо заменить KeyName соответствующими именами разделов реестра. Например, instanceName и VirtualServerName являются именами разделов реестра.
  • Необходимо заменить KeyValue соответствующим значением для ключа. Для раздела реестра InstanceName можно назначить имя экземпляра SQL Server, который представляет виртуальный сервер, для значения ключа. В качестве имени экземпляра по умолчанию можно использовать MSSQLSERVER.