Como restaurar o banco de dados Adventure Works em um SQL Server no Docker?
- Rodrigo Saito
- 14 de nov. de 2024
- 2 min de leitura
Olá pessoal, tudo bem?
Quando utilizamos o SQL Server em um container Docker, mesmo ele sendo um recurso que compartilha o hardware com o seu host, o SO do docker está separado do SO do host.
No caso da imagem do docker do SQL Server da Microsoft, o SO é um linux, a qual precisaremos de alguns comandos básicos para fazer a cópia do arquivo do host para a imagem docker.
Faça o download do arquivo do banco de dados de backp, da própria Microsoft.
Até a edição de blog, o arquivo está localizado em: https://learn.microsoft.com/en-us/sql/samples/adventureworks-install-configure?view=sql-server-ver16&tabs=ssms
É possívell voce escolher o tipo e a versão do Backup do SQL. No caso, tem que ser compatível com o SQL Server que voce esteja usando no container Docker.

Vamos baixar o arquivo AdventureWorks2022.bak do tipo OLTP, em seu host Windows (provavelmente)
Confira se o arquivo se encontra na pasta downloads (como padrão na maioria dos SOs Windows),

Para copiar o arquivo AdventureWorks2022.bak para dentro do container, é necessário voce saber o nome que está o container.
Abra um prompt do Power Shell e digite:
docker ps

Nesse caso, o nome do meu container é sql1
Vá para a pasta Downloads, onde está o arquivo a ser copiado:
cd .\Downloads\

Dê o seguindo comando para o arquivo local seja copiado:
docker cp .\AdventureWorks.bak container_name:/var/opt/mssql/data/

Fizemos a cópia do arquivo para dentro do Linux do container.
Entre no SSMS e conecte ao SQL Server no Docker.
Depois de conectado (digitado o seu modo de autenticacao, login e senha), clique com o botão direto em Database / Restore:

Clique em [Device] e nos tres pontos do botão:

Clique no botão [Add], depois clique em cima do arquivo AdventureWorks2022.bak e por último clique no botão [OK]

Depois de selecionado o arquivo, voltará na tela anterior, clique [OK]

Observe o arquivo selecionado para ser restauirado. Clique em [OK]

O SQL Server retornará uma mensagem que a restauração foi efetuada com sucesso. Clique em [OK]

No Object Explorer do SQL, clique em Databases, e no botão Refresh.

Irá aparecer o banco de dados Adventure Works com todas as suas tabelas:

Pronto! Fizemos a nossa restauração do Adventure Works!
Esse processo pode ser aplicado para qualquer outro banco de dados a ser restaurado.
Esperamos que tenha ajudado.
Obrigado e até + !