Migrando o banco de dados WSUS do WID para SQL
Aplica-se a: Windows Server 2022, Windows Server 2019, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016
Use as etapas a seguir para migrar o SUSDB (banco de dados do WSUS) de uma instância de Banco de Dados Interno do Windows para uma instância local ou remota de SQL Server.
Pré-requisitos
- SQL Instância. Esse pode ser o MSSQLServer padrão ou uma Instância personalizada.
- SQL Server Management Studio
- WSUS com a função WID instalada
- IIS (normalmente, isso é incluído quando você instala o WSUS por meio de Gerenciador do Servidor). Ele ainda não está instalado, precisará ser.
Migrando o banco de dados do WSUS
Parar os serviços do IIS e do WSUS no servidor WSUS
Do PowerShell (elevado), execute:
Stop-Service IISADMIN
Stop-Service WsusService
Desanexar o SUSDB do Banco de Dados Interno do Windows
Usando SQL Management Studio
- Clique com o botão direito do mouse em SUSDB ->Tarefas –> clique em Desanexar:
- Verifique Soltar Conexões Existentes e clique em OK (opcional, se houver conexões ativas).
Usando o Prompt de Comando
Importante
Essas etapas mostram como desanexar o SUSDB (banco de dados WSUS) da instância Banco de Dados Interno do Windows usando o utilitário sqlcmd. Para obter mais informações sobre o utilitário sqlcmd , consulte o Utilitário sqlcmd.
- Abra um prompt de comando com privilégios elevados
- Execute o seguinte comando SQL para desanexar o SUSDB (banco de dados WSUS) da instância Banco de Dados Interno do Windows usando o utilitário sqlcmd:
sqlcmd -S \\.\pipe\Microsoft##WID\tsql\query
use master
GO
alter database SUSDB set single_user with rollback immediate
GO
sp_detach_db SUSDB
GO
Copiar os arquivos SUSDB para o SQL Server
- Copie SUSDB.mdf e SUSDB_log.ldf da pasta de dados WID (%SystemDrive%\Windows\WID\Data) para a pasta de dados da instância SQL.
Dica
Por exemplo, se a pasta SQL instância for C:\Arquivos de Programas\Microsoft SQL Server\MSSQL12. MSSQLSERVER\MSSQL e a pasta dados WID é C:\Windows\WID\Data, copie os arquivos SUSDB de C:\Windows\WID\Data para C:\Arquivos de Programas\Microsoft SQL Server\MSSQL12. MSSQLSERVER\MSSQL\Data
Anexar o SUSDB à Instância SQL
- Em SQL Server Management Studio, no nó Instância, clique com o botão direito do mouse em Bancos de Dados e clique em Anexar.
- Na caixa Anexar Bancos de Dados , em Bancos de Dados para anexar, clique no botão Adicionar e localize o arquivo SUSDB.mdf (copiado da Pasta WID) e clique em OK.
Dica
Isso também pode ser feito usando o Transact-Sql. Consulte a documentação SQL para anexar um banco de dados para obter suas instruções.
Exemplo (usando caminhos do exemplo anterior):
USE master;
GO
CREATE DATABASE SUSDB
ON
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\SUSDB.mdf'),
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log\SUSDB_Log.ldf')
FOR ATTACH;
GO
Verificar SQL Server e permissões e logons de banco de dados
permissões de logon SQL Server
Depois de anexar o SUSDB, verifique se o NT AUTHORITY\NETWORK SERVICE tem permissões de logon à instância do SQL Server fazendo o seguinte:
- Vá para SQL Server Management Studio
- Abrindo a instância
- Clique em Segurança
- Clique em Logons
A conta NT AUTHORITY\NETWORK SERVICE deve ser listada. Se não estiver, você precisará adicioná-lo adicionando Novo Nome de Logon.
Importante
Se a Instância de SQL estiver em um computador diferente do WSUS, a conta de computador do servidor WSUS deverá ser listada no formato [FQDN]\[WSUSComputerName]$. Caso contrário, as etapas abaixo podem ser usadas para adicioná-lo, substituindo NT AUTHORITY\NETWORK SERVICE pela conta de computador do servidor do WSUS ([FQDN]\[WSUSComputerName]$) Isso seria além de conceder direitos à NT AUTHORITY\NETWORK SERVICE
Adicionando NT AUTHORITY\NETWORK SERVICE e concedendo-lhe direitos
- Clique com o botão direito do mouse em Logons e clique em Novo Logon...
- Na página Geral , preencha o nome de logon (NT AUTHORITY\NETWORK SERVICE) e defina o banco de dados padrão como SUSDB.
- Na página Funções do Servidor , verifique se o público e o sysadmin estão selecionados.
- Na página Mapeamento de Usuário :
- Em Usuários mapeados para este logon: selecione SUSDB
- Em Associação de função de banco de dados para: SUSDB, verifique se os seguintes são verificados:
- público
- Webservice
- Clique em OK
Agora você deve ver NT AUTHORITY\NETWORK SERVICE em Logons.
Permissões de banco de dados
- Clique com o botão direito do mouse no SUSDB
- Selecione Propriedades
- Clique em Permissões
A conta NT AUTHORITY\NETWORK SERVICE deve ser listada.
Se não estiver, adicione a conta.
Na caixa de texto Nome de Logon, insira o computador WSUS no seguinte formato:
[FQDN]\[WSUSComputerName]$
Verifique se o banco de dados padrão está definido como SUSDB.
Dica
No exemplo a seguir, o FQDN é Contosto.com e o nome do computador WSUS é WsusMachine:
Na página Mapeamento de Usuário , selecione o Banco de Dados SUSDB em Usuários mapeado para esse logon
Verifique o serviço Web na associação de função de banco de dados para: SUSDB:
Clique em OK para salvar as configurações.
Observação
Talvez seja necessário reiniciar o Serviço de SQL para que as alterações entrem em vigor.
Editar o registro para apontar o WSUS para a Instância SQL Server
Importante
Siga as etapas nesta seção com cuidado. Problemas sérios podem ocorrer se você modificar o Registro incorretamente. Antes de modificá-lo, faça backup do Registro para a restauração em caso de problemas.
Clique em Iniciar, clique em Executar, digite regedit& e clique em OK.
Localize a seguinte chave: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\UpdateServices\Server\Setup\SqlServerName
Na caixa de texto Valor , digite [ServerName]\[InstanceName] e clique em OK. Se o nome da instância for a instância padrão, digite [ServerName].
Localize a seguinte chave: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\Installed Role Services\UpdateServices-WidDatabase
Renomear a chave para UpdateServices-Database
Observação
Se você não atualizar essa chave, o WsusUtil tentará atender ao WID em vez da Instância SQL para a qual você migrou.
Iniciar os serviços do IIS e do WSUS no servidor WSUS
Do PowerShell (elevado), execute:
Start-Service IISADMIN
Start-Service WsusService
Observação
Se você estiver usando o Console do WSUS, feche-o e reinicie-o.
Desinstalando a função WID (não recomendada)
Aviso
Remover a função WID também remove uma pasta de banco de dados (%SystemDrive%\Arquivos de Programas\Serviços de Atualização\Banco de Dados) que contém scripts exigidos por WSUSUtil.exe para tarefas pós-instalação. Se você optar por desinstalar a função WID, faça backup da pasta %SystemDrive%\Arquivos de Programas\Serviços de Atualização\Banco de Dados de antemão.
Usando o PowerShell:
Uninstall-WindowsFeature -Name 'Windows-Internal-Database'
Depois que a função WID for removida, verifique se a seguinte chave do Registro está presente: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\Installed Role Services\UpdateServices-Database