0

DBATOOLS: introducción e instalación

En esta nueva etapa hemos querido mostraros una utilidad que es parte de nuestro día a día como DBAs: el módulo de PowerShell DBATOOLS

DBATools es un módulo de código abierto creado por la comunidad SQL Server, paralelamente al módulo que nos proporciona Microsoft ‘SqlServer’. Nos ayuda a realizar diferentes operaciones en las instancias y bases de datos gracias a sus más de 500 cmdlets, unas 5 veces más de lo que obtiene en el módulo SqlServer. Estas operaciones nos ayudan a automatizar las tareas de SQL Server y fomentan las mejores prácticas. Pero no solamente DBATools se diferencia del módulo oficial de Microsoft por su mayor número de comandos, para los que habéis trabajado con este último habréis podido comprobar tediosidad y complejidad a la hora de realizar cualquier fácil tarea a diferencia de DBATools que sorprende por su facilidad de uso con comandos mucho más simples. 

¿Cómo instalarlo? 

Instalar el módulo DBATools es extremadamente fácil y sus únicos requisitos a grandes rasgos son PS 3.0 y SQL 2000. Como nos indica su documentación oficial , hay diferentes métodos y aquí repasaremos dos de ellos:

1. Instalar dbatools desde la galería de Power Shell, para equipos con salida a internet: 

Realizamos la instalación a través de la propia consola de PowerShell:

#Install the dbatools module from the PowerShell gallery 

Install-Module -Name dbatools 

Es posible que nos solicite durante la instalación que queremos instalar el módulo a pesar de ser de un repositorio de confianza:

Tras ello el módulo ya estaría instalado.

Si os indica que ya lo tenéis instalado y queréis actualizarlo o queréis desinstalarlo por cualquier motivo podéis realizarlo de la siguiente manera:

#If the module is already installed, update it using the following commands: 

#For PowerShell 5.0 or later 

Update-Module -Name dbatools 

 

#For PowerShell version earlier than 5.0 

Uninstall-Module -Name dbatools 

Install-Module -Name dbatools 

2. Instalación dbatools de modo manual sin conexión:

Descargamos la última versión del repositorio de GitHub de dbatools:  dbatools.io/zip 
 
Descomprimimos el fichero en la ruta C:\Program Files\WindowsPowerShell\Modules 

Tras ello renombramos la carpeta creada a ‘dbatools’. 

Una vez instalado el módulo podemos realizar una conexión a cualquier instancia y sus bases de datos para comprobar la instalación y su sencillez: 

# To test connectivity to a SQL instance 

Test-DbaConnection localhost 

 

# To test connectivity to a specific database 

Get-DbaDatabase -SqlInstance localhost -Database MyDatabase 

¿Por qué DBATools? 

DBATools se va constantemente actualizando a través de la retroalimentación de la comunidad, y es que cualquiera de nosotros puede informar sobre bugs, solicitar mejoras o sugerir nuevas funciones a través de su página de issues de GitHub

El número de prácticas, tareas y funciones que podemos realizar es muy amplio, y no mentimos cuando decimos que casi toda actividad que puede realizar un DBA puede hacerse con la ayuda de varios comandos disponibles en su biblioteca: 

  • Migración 
  • Copia de seguridad y restauración: base de datos 
  • Copia de seguridad y restauración: certificados 
  • Diagnóstico y rendimiento 
  • Traces y Profiler 
  • Eventos extendidos 
  • DBCC 
  • Envío de registro 
  • Trabajo con bases de datos 
  • Inicio de sesión y gestión de usuarios 
  • Seguridad y cifrado 
  • Exportar 
  • Separar y adjuntar 
  • SQL Agent 
  • Correo y registro 
  • Escribir en tablas SQL 
  • Gestión del servidor 
  • Endpoints 
  • Instantáneas 
  • Sistema de archivos y almacenamiento 
  • Servicios 
  • Despliegue 
  • Cadenas de conexión 
  • Red y conectividad 
  • Configuración del cliente SQL 
  • SSIS 
  • Gestión basada en políticas 
  • sp_configure 
  • Replicación 
  • Servidores registrados 

…y mucho más. 

Aquí https://dbatools.io/commands/ podéis comprobar toda la  lista de funciones que nos permite dbatools.  

 
Como se indicó anteriormente, dbatools contiene cientos de comandos, por lo que es imposible poder mostraros todos en una entrada. Dado el gran alcance de DBATools es posible que no se sepa por dónde empezar. Una de los métodos para ir comenzando a familiarizarnos con sus más de 500 cmdlets puede ser echar un vistazo a Aprenda dbatools en un mes de almuerzos » de Chrissy y Rob, y ver  las grandes posibilidades de administración que nos proporciona el módulo. Hasta ahora, tan solo hay publicados 8 artículos, pero ya podemos repasar tareas como el inventariado de entornos, instalación de instancias, recuperación de desastres, administración de logins y usuarios, etc. 

Conclusión 

En esta entrada solo hemos querido cubrir la presentación del módulo y su instalación. Prometemos en futuras artículos realizar varias tareas y operaciones con DBATools

Aunque Microsoft recomienda usar el módulo SqlServer para interactuar con SQL Server desde PowerShell, en nuestra opinión, DBAtools debería ser su módulo PowerShell predeterminado para cualquier trabajo de SQL Server. Os lo recomendamos. 

También, para más información, puedes visitar la web oficial así como la comunidad.

Si tienes alguna consulta no dudes en hacérnosla llegar a través de los comentarios o mediante nuestro formulario de contacto. 

¡Nos muy vemos pronto! 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *