Over 10 years we help companies reach their financial and branding goals. Engitech is a values-driven technology agency dedicated.

Gallery

Contacts

411 University St, Seattle, USA

engitech@oceanthemes.net

+1 -800-456-478-23

Dbatools

SQL Server e Powershell – Já ouviu falar sobre dbatools?

O dbatools é um módulo Powershell de código aberto (open source) no qual foi criado pela MVP Chrissy LeMaire, porém atualmente possui mais de 215 colaboradores das comunidades SQL Server, PowerShell e C#. O dbatools tem como funcionalidade facilitar o trabalho do DBA SQL Server em seu gerenciamento de instâncias SQL Server.

Em ambientes que possuem várias instâncias de banco de dados, precisamos otimizar o tempo para que seja possível analisar problemas que de fato precisam mais de atenção, com isso o dbatools pode lhe auxiliar com tarefas automatizadas substituindo aquelas tarefas chatas repetitivas que antes era feita de forma manual.

O dbatools não necessariamente precisa ser instalado no servidor de banco de dados , ele pode ser executado de uma estação de trabalho que possui acesso aos host de banco de dados.

E o melhor, o módulo é gratuito (0800) com mais de 500 comandos entre as categorias (boas práticas, administração, desenvolvimento, migração).

O dbatools também pode ser útil para o time de DevOps \ InfraOps \ SRE, para provisionamentos de ambientes de banco de dados SQL Server.

Neste post vamos aprender como é feito a instalação do módulo, irei demonstrar a instalação no próprio servidor de banco de dados porém isso não altera a forma de instalar em outras estações que não possuem banco de dados.

Será necessário iniciar o PowerShell como administrador para que seja possível a execução do comando de instalação.

Este método de instalação depende da internet para que seja possível o download do dbatools. Porém é possível efetuar a instalação offline.

Install-Module dbatools

Ao executar o comando acima, o PowerShell solicita a interação do usuário para que seja possível a continuação da instalação do módulo, neste caso vamos prosseguir com a opção de [ Y ] YES.

Para melhor visualização da imagem, clique sobre ela para visualizar no tamanho real.

Logo em seguida é solicitado outra interação do usuário para permitir a instalação do módulo obtido na PSGallery. Como visto na imagem acima, a opção utiliza é [ A ] Yes to All.
Abaixo temos o print após a instalação do dbatools.

Após a instalação é possível verificar se o dbatools foi instalado de fato, podemos executar o comando conforme imagem abaixo para listar os comandos disponibilizados.

Get-command -Module dbatools

Porém é possível também abrir o PowerShell ISE e no menu “Commands > Modules:” podemos selecionar o “dbatools” no qual será listados apenas os comandos do módulo.

No site do dbatools é possível visualizar todos os comandos e help.

Vamos efetuar o teste de conexão na instância SQLNODE1.
Ao executar o comando de teste de conexão na instância será retornado algumas informações.

Test-DbaConnection SQLNODE1

Bora fazer um backup de um banco de dados utilizando o dbatools?

Neste exemplo vamos efetuar o backup full do database AdventureWorks2019 localizado na instância SQLNODE1 salvando o arquivo no diretório F:\Backup.

Backup-DbaDatabase -SqlInstance SQLNODE1 -Path F:\backup -Database AdventureWorks2019 -Type Full

No print abaixo podemos visualizar o arquivo gerado no diretório.

Pessoal, este foi o post para apresentar um pouco das várias funcionalidades do dbatools. Lembrando que para estudo faça um laboratório de teste para ter mais segurança e controle sobre o ambiente em testes da ferramenta.

Espero que tenham gostado do post.

Uai bora tomar aquele cafezinho quente com um pão de queijo?!

Author

Wesley Cardoso