19.10.26

Очистка установки SQL Server с помощью UninstallString, когда запись в «Программах и компонентах» отсутствует

Автор: Vivek Janakiraman, SQL Server Cleanup Using UninstallString When Programs and Features Entry is Missing

Иногда случается, что службы SQL Server могут по-прежнему существовать на сервере, но связанные записи SQL Server отсутствуют в «Программах и компонентах». Это может происходить из-за отсутствующих или повреждённых записей реестра, неполного удаления или неудачных действий по установке исправлений.

Для получения информации об удалении из реестра можно использовать пример следующего ниже сценария PowerShell:

Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*, ` HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object { $_.DisplayName -like “*SQL Server 2016*” } | Select-Object DisplayName, UninstallString

Решение

Этот сценарий помогает получить UninstallString для компонентов SQL Server напрямую из реестра.

Во многих случаях команда удаления может содержать:

/I

Для удаления её следует заменить на:

/X

Пример:

MsiExec.exe /x

Это принудительно запускает операцию удаления вместо запуска установщика в режиме обслуживания.

Важные замечания

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

Итог

Когда записи SQL Server отсутствуют в «Программах и компонентах», сведения об удалении всё ещё можно получить из реестра Windows с помощью PowerShell. Замена /I на /X в команде удаления может помочь удалить мусорные компоненты SQL Server. Однако, поскольку этот метод полагается на очистку на основе реестра, его следует использовать с осторожностью только в исключительных сценариях, а пересоздание сервера остаётся предпочтительным долгосрочным решением.



Комментариев нет:

Отправить комментарий