Диагностика отказоустойчивого кластера
Изменения: 17 июля 2006 г.
Этот подраздел содержит следующие сведения:
- основные этапы диагностики;
- восстановление по журналу после сбоя отказоустойчивого кластера;
- разрешение наиболее частых проблем отказоустойчивого кластера;
- использование расширенных хранимых процедур и COM-объектов.
Основные этапы диагностики
При работе с отказоустойчивым кластером SQL Server 2005 помните, что кластер серверов состоит из экземпляра отказоустойчивого кластера, работающего под управлением службы кластеров Майкрософт (MSCS). Этот экземпляр SQL Server может размещаться на узлах Microsoft MSCS, составляющих кластер серверов Майкрософт.
Если на узлах кластера серверов возникнут проблемы, они могут проявить себя как проблемы экземпляра отказоустойчивого кластера. Для идентификации и разрешения этих проблем необходимо предпринять следующие действия в отношении отказоустойчивого кластера SQL Server.
- Оборудование: просмотрите журнал системных событий Microsoft Windows.
- Операционная система: просмотрите журналы событий системы Windows и приложений.
- Сеть: просмотрите журналы событий системы Windows и приложений. Сопоставьте текущую конфигурацию со сведениями, содержащимися в статье базы знаний Майкрософт по рекомендуемой частной конфигурации с тактовым импульсом для кластера серверов.
- Безопасность: просмотрите журналы приложений Windows и событий безопасности.
- MSCS: просмотрите журнал событий системы Windows, журнал приложений и журнал кластера.
- SQL Server: Устраните ошибки обычным способом после установления отсутствия ошибок с оборудованием, ОС, сетью, безопасностью и MSCS.
Восстановление по журналу после сбоя отказоустойчивого кластера
Обычно сбой отказоустойчивого кластера возникает в следующих случаях.
- Сбой оборудования в одном из узлов двухузлового кластера. Такой сбой оборудования может быть вызван сбоем SCSI-контроллера или ОС.
Для восстановления после такого сбоя удалите неисправный узел из отказоустойчивого кластера с помощью программы установки SQL Server, устраните сбой оборудования, переключив компьютер в автономный режим, восстановите машину и добавьте восстановленный узел снова к экземпляру отказоустойчивого кластера.
Дополнительные сведения см. в разделах Как создать новый отказоустойчивый кластер SQL Server 2005 (программа установки) и Как произвести восстановление после сбоя отказоустойчивого кластера в сценарии 1. - Ошибка операционной системы. В этом случае данный узел отключен, но не является окончательно неисправным.
Для восстановления после сбоя ОС восстановите данный узел и проверьте переход на другой ресурс. Если данный экземпляр SQL Server не переключается на другой ресурс должным образом, необходимо программой установки SQL Server удалить SQL Server из отказоустойчивого кластера, произвести необходимые восстановительные процедуры, восстановить резервную копию и снова добавить восстановленный узел к экземпляру отказоустойчивого кластера.
Такое восстановление после сбоя ОС может занять значительное время. Если сбой ОС можно устранить более простым способом, не прибегайте к этому методу.
Дополнительные сведения см. в разделах Как создать новый отказоустойчивый кластер SQL Server 2005 (программа установки) и Как произвести восстановление после сбоя отказоустойчивого кластера в сценарии 2.
Учтите также следующие изменения касательно отказоустойчивых кластеров в SQL Server 2005.
- В SQL Server 2005 файлы журналов находятся в другом каталоге, нежели в предыдущих выпусках SQL Server. Дополнительные сведения см. в разделе Как просмотреть файлы журналов установки SQL Server 2005.
- В SQL Server 2005 компоненты, не привязанные к экземпляру, устанавливаются только на главный узел; в SQL Server 2000 такие компоненты устанавливались на все узлы. Дополнительные сведения см. в разделе Настройка учетных записей служб Windows.
- В SQL Server 2005 структуры каталогов и реестра изменены по сравнению с предыдущими выпусками. Дополнительные сведения см. в разделах Настройка учетных записей служб Windows и Расположение файлов для экземпляра по умолчанию и именованных экземпляров SQL Server 2005.
Разрешение общих проблем
В следующем списке приведено описание общих проблем и даны объяснения по их устранению.
Проблема: Неверное использование синтаксиса командной строки при установке SQL Server 2005
Объяснение 1. Трудно диагностировать проблемы программы установки при использовании в командной строке ключа /qn, поскольку ключ /qn подавляет все диалоговые окна программы установки и сообщения об ошибках. Если указан ключ /qn, все сообщения программы установки, включая сообщения об ошибках, записываются в файлы журналов программы установки. Дополнительные сведения о файлах журналов см. в разделе Как просмотреть файлы журналов установки SQL Server 2005.
Решение 1: Вместо ключа /qn используйте ключ /qb. При использовании аргумента /qb на каждом этапе отображается базовый интерфейс пользователя, в том числе сообщения об ошибках.
Объяснение 2. Использован неверный формат в файле template.ini, расположенном в главном каталоге установочного носителя SQL Server 2005.
Решение 2. Хотя непредвиденные символы могут пропускаться программой установки, включите все нужные переменные в команду установки.
Между переменной и ее значением в командной строке не должно быть пробелов. Например, отсутствует пробел в строке «ADDLOCAL=ALL». При указании строки «ADDLOCAL = ALL» программа установки завершается ошибкой. Другой пример — IP-адрес и его значение. Строка «IP=www.xxx.yyy.zzz,Подключение по локальной сети» является правильной. При добавлении пробела после символа запятой «,» программа установки завершается ошибкой.
Проблема: SQL Server 2005 не удается подключиться к сети после его перемещения на другой узел
Проблема 1. Учетная запись службы SQL Server не может связаться с контроллером домена.
Решение 1. Проверьте журналы событий на предмет записей о проблемах сети, например о сбоях адаптеров или проблемах с DNS. Проверьте контроллер домена командой ping.
Проблема 2. Пароли учетной записи службы SQL Server различны на всех узлах кластера, или узел не был перезапущен, после того как служба SQL Server подверглась миграции с неисправного узла.
Решение 2. Измените пароли учетной записи службы SQL Server при помощи диспетчера конфигурации SQL Server. Если это не было сделано, а пароли учетной записи службы SQL Server изменены на одном узле, необходимо также изменить их на всех остальных узлах. Диспетчер конфигурации SQL Server выполняет это действие автоматически.
Проблема. SQL Server не может получить доступ к дискам кластера
Проблема 1. Программы ПЗУ или драйверы обновлены не на всех узлах.
Решение 1. Удостоверьтесь, что на всех узлах установлены правильные версии программ ПЗУ и одинаковые версии драйверов.
Проблема 2. Узел не может восстановить диски кластера, подвергнутые миграции с неисправного узла на общий диск кластера с другой буквой диска.
Решение 2. Буквы для дисков кластера должны быть одинаковыми на обоих серверах. Если это не так, проверьте исходную установку ОС и службы кластеров Майкрософт (MSCS).
Проблема. Сбой службы SQL Server вызывает переход на другой ресурс
Решение. Чтобы сбой определенных служб не вызывал перехода группы SQL Server на другой ресурс, настройте эти службы при помощи программы администрирования кластеров Windows следующим образом:
- cбросьте флажок Применить к группе на вкладке Дополнительно диалогового окна Свойства полного текста. Однако если SQL Server вызовет переход на другой ресурс, служба полнотекстового поиска будет перезапущена.
Проблема. SQL Server не запускается автоматически
Решение. При помощи приложения Cluster Administrator в MSCS настройте автоматический запуск отказоустойчивого кластера. Не следует настраивать службу SQL Server для запуска вручную, нужно настроить приложение «Администратор кластеров» в MSCS для запуска службы SQL Server.
Проблема. Сетевой ресурс, к которому выполняется обращение по имени, недоступен, и нельзя подключиться к SQL Server через TCP/IP
Проблема 1. Сбой службы DNS, в то время как ресурсы кластера настроены на использование DNS.
Решение 1. Устраните проблемы с DNS.
Проблема 2. В сети дублируется какое-либо имя.
Решение 2. С помощью средства NBSTAT найдите дублирующееся имя и устраните проблему.
Проблема 3. SQL Server подключается без использования именованных каналов.
Решение 3. Для подключения через именованные каналы создайте псевдоним при помощи диспетчера конфигурации SQL Server для подключения к нужному компьютеру. Например, при использовании кластера с двумя узлами (Узел A и Узел B) и экземпляра отказоустойчивого кластера (Virtsql) с экземпляром по умолчанию можно подключиться к серверу, для которого ресурс сетевого имени недоступен, выполнив следующие действия:
- Определите, на каком узле группы запущен экземпляр SQL Server при помощи приложения «Администратор кластеров». Например, это оказался Узел A.
- Запустите службу SQL Server на этом компьютере командой net start. Дополнительные сведения об использовании net start см. в разделе Запуск SQL Server вручную.
- Запустите диспетчер конфигурации SQL Server на Узле A. Просмотрите именованный канал, по которому прослушивает этот сервер. Название будет похоже на \\.\$$\VIRTSQL\pipe\sql\query.
- На клиентском компьютере запустите диспетчер конфигурации SQL Server.
- Создайте псевдоним SQLTEST1 для соединения с этим каналом по протоколу именованных каналов. Для этого введите Узел A в качестве имени сервера и измените имя канала на \\.\pipe\$$\VIRTSQL\sql\query.
- Подключитесь к экземпляру сервера с использованием псевдонима SQLTEST1 в качестве имени сервера.
Проблема: Программа установки SQL Server на кластере завершилась с кодом ошибки 1058
Проблема. Отключение службы планировщика задач на узлах кластера привело к аварийному завершению программы установки с кодом ошибки 1058. В журнал core.log заносится следующая запись:
Error: SetTargetComputer on \\machinename failed with
Unable to start service (1058)
Error: RunRemoteProcess Received return code 1058 from STPCOMPAQ3790N2
Последняя строка данного журнала будет выглядеть, как показано ниже.
<EndFunc Name='DwLaunchMsiExec' Return='1058' GetLastError='183'>
Решение. При помощи диспетчера кластера запустите службу Task Scheduler на всех узлах кластера. Дополнительные сведения см. в разделе Как включить службу планировщика задач Windows.
Проблема. Программа установки SQL Server на кластере завершилась с кодом ошибки 11001
Проблема. Потерянный раздел реестра в ветке [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.X\Cluster].
Решение. Удостоверьтесь, что куст реестра MSSQL.X в настоящее время не используется, и удалите данный ключ кластера.
Проблема. Ошибка при установке кластера: «У установщика недостаточно прав доступа к этому каталогу: <диск>\Microsoft SQL Server. Работа программы установки прервана. Войдите в систему как администратор или обратитесь к своему системному администратору»
Проблема. Эта ошибка произошла из-за общего диска SCSI, неверно разбитого на разделы.
Решение. Создайте повторно единую секцию на этом общем диске с помощью следующих действий.
- Удалите данный дисковый ресурс из кластера.
- Удалите на этом диске все секции.
- Удостоверьтесь в свойствах диска — в том, что он является основным.
- Создайте на этом общем диске один раздел, отформатируйте диск и присвойте ему букву.
- Добавьте этот диск к кластеру с помощью приложения «Администратор кластеров» (cluadmin).
- Запустите программу установки SQL Server.
Проблема. Приложениям не удалось прикрепить ресурсы SQL Server 2005 в распределенной транзакции
Проблема. Поскольку координатор распределенных транзакций Майкрософт (MS DTC) настроен в Windows не полностью, то приложениям, возможно, не удастся прикрепить ресурсы SQL Server 2005 к распределенной транзакции. Эта проблема касается связанных серверов, распределенных запросов и удаленных хранимых процедур, использующих распределенные транзакции.
Решение. Для предотвращения этой проблемы необходимо полностью включить службы MS DTC на сервере, на котором установлен SQL Server 2005.
Чтобы полностью включить координатор MS DTC, выполните следующие шаги.
- На панели управления откройте Администрирование, затем Управление компьютером.
- В левой области окна «Управление компьютером» разверните узел Службы и приложения и щелкните пункт Службы.
- В правой области окна «Управление компьютером» правой кнопкой мыши щелкните Координатор распределенных транзакций и выберите Свойства.
- В окне Координатор распределенных транзакций перейдите на вкладку Общие и нажмите кнопку Стоп, чтобы остановить службы.
- В окне Координатор распределенных транзакций перейдите на вкладку Вход в систему и выберите в качестве учетной записи для входа в систему NT AUTHORITY\NetworkService.
- Нажмите кнопки Применить и ОК, чтобы закрыть окно Координатор распределенных транзакций. Закройте окно Управление компьютером. Закройте окно Администрирование.
Примечание. |
---|
Для установки SQL Server 2005 на компьютерах, входящих в состав отказоустойчивого кластера, службы MS DTC должны быть полностью включены и кластеризованы до запуска программы установки. Если службы координатора распределенных транзакций Microsoft (MS DTC) не кластеризованы, программа установки завершается неудачно. Перед запуском программы установки проверьте с помощью программы «Администратор кластеров», что MS DTC был кластеризован. |
Проблема. Сбой программы установки отказоустойчивого кластера SQL Server 2005 при установке с компакт-диска
Проблема. При выборе компонента отказоустойчивого кластера и компонента клиентских средств в ходе выполнения программы установки SQL Server 2005 установка может завершиться неудачно с ошибкой «Не удалось завершить удаленную установку» после вставки в дисковод для компакт-дисков установочного диска 2.
Решение. Скопируйте установочные файлы с обоих компакт-дисков в один каталог на активном узле кластера или общем сетевом ресурсе. Например:
c:
cd\
md SQLENT
Скопируйте содержимое обоих компакт-дисков в каталог SQLENT:
\SQLENT\Servers
\SQLENT\Tools
Примечание. |
---|
Эта проблема не возникает при установке с DVD-диска. |
Использование расширенных хранимых процедур и COM-объектов
При использовании расширенных хранимых процедур в конфигурациях с отказоустойчивым кластером все такие процедуры должны быть установлены на диск кластера под управлением SQL Server. Это обеспечивает возможность снова использовать расширенные хранимые процедуры после перехода узла на другой ресурс.
Если данные расширенные хранимые процедуры используют COM-компоненты, администратор должен зарегистрировать их на каждом узле кластера. Сведения для загрузки и выполнения COM-компонентов должны быть в реестре активного узла, чтобы можно было создать эти компоненты. В противном случае эти сведения остаются в реестре компьютера, на котором эти СОМ-компоненты были зарегистрированы в первый раз.
См. также
Другие ресурсы
Как просмотреть файлы журналов установки SQL Server 2005
How Extended Stored Procedures Work
Execution Characteristics of Extended Stored Procedures
Справка и поддержка
Получение помощи по SQL Server 2005
Журнал изменений
Версия | Журнал |
---|---|
17 июля 2006 г. |
|