Saltar al contenido

Diario de un DBA

Problemas y soluciones para SQL Server

Menú
  • Inicio
  • Consultoria gratuita
  • tempdb
  • Curso Azure DP-300
  • Rendimiento
  • Seguridad
  • Sobre Mi
Menú

Migrar logins entre instancias con DBAtools en SQL Server

Publicada el abril 6, 2024mayo 24, 2024 por solracamo

Contenido del post:

Toggle
  • ¿Qué es Dbatools?
  • Cómo instalar Dbatools
  • Cómo migrar o copiar logins con dbatools
  • Qué hacer si aparece el error «The certificate chain was issued by an authority that is not trusted» en dbatools.

Si si lo sé el ritmo de publicación de este blog está siendo abrumador deberia calmarme un poco.

Un cliente se ha creado un nuevo entorno de pruebas para… bueno, hacer pruebas. Esto quiere decir que el cliente necesita replicar la instancia de producción en una nueva instancia y para ello necesita, además de copiar todas sus bases de datos, hacer lo mismo con los objetos SQL de la instancia (login, jobs, linked server etc…).

Migrar las bases de datos es algo «sencillo» que en este caso se puede hacer sin ningún problema haciendo backups y restores, pero cuando de los objetos de SQL Server puede ser un poquito más complicado debido a que estos pueden tener ciertas configuraciones especificas para la instancia.

Un claro ejemplo de esto es cuando os hablé sobre los SID de los logins.

Para estas tareas más complicadas os voy a hablar de una herramienta llamada dbatools que, literalmente, os va a ahorrar mucho tiempo de trabajo.

¿Qué es Dbatools?

DBATools es una colección de scripts de PowerShell que están diseñados para hacer la administración de SQL Server más fácil y eficiente. Estos scripts proporcionan una amplia gama de funcionalidades que abarcan desde la administración básica de bases de datos hasta tareas más avanzadas, como la migración de bases de datos, backups, restores, y la administración de logins y sus permisos.

Cómo instalar Dbatools

Instalar Dbatools es bastante sencillo. Primero, necesitas tener PowerShell instalado en tu sistema. Luego, puedes instalar DBATools utilizando PowerShell Gallery, que es el repositorio de paquetes de PowerShell. Aquí tienes los pasos para instalar DBATools:

Basicamente tienes que abrir powershell y ejecutar el siguiente comando (preguntale al tio de windows si tienes dudas):

Install-Module dbatools

Una vez que termine deberia estar listo para usarse.

Cómo migrar o copiar logins con dbatools

Nuestro cliente necesita copiar todos sus logins desde una instancia a otra. Para esto vamos a ejecutar el siguiente comando en powershell:

Copy-DbaLogin -Source InstanciaProd -Destination InstanciaTest

Esto copiará TODOS LOS LOGINS desde la instancia de producción a la instancia de test con el mismo SID y los mismos permisos. En la web oficial podreis encontar todas las variantes disponibles de este comando.

Y eso es todo. Después de que el comando haya finalizado, podreis ver un resumen de todos los logins que han sido copiados, si alguno no ha sido copiado porque ya existia o si ha habido algún error.

No dudeis en visitar la web oficial para conocer el resto de comandos, estoy seguro de que alguno os servirá para algo.

Qué hacer si aparece el error «The certificate chain was issued by an authority that is not trusted» en dbatools.

Como la voz de la experiencia puedo suponer que alguno de vosotros habeis llegado aquí porque os ha aparecido un error que dice «The certificate chain was issued by an authority that is not trusted» y no teneis ni idea de como solucionarlo.

Yo tampoco sé como solucionarlo definitivamente, pero si que he encontrado una solución temporal (lo que dure la sesión de powershell). Ejecutad el siguiente comando y luego volver a ejecutar el comando de dbatools

Set-DbatoolsInsecureConnection -SessionOnly

Esto hará funcionar dbatools sólo durante la sesión actual, por lo que tendreis que ejecutarlo de nuevo cada vez que inicies un nuevo powershell.

3 comentarios en «Migrar logins entre instancias con DBAtools en SQL Server»

  1. Pingback: Always On en SQL Server. Todo lo que necesitas saber - Diario de un DBA
  2. Nestor Zapata dice:
    septiembre 23, 2024 a las 4:33 pm

    amigo, te agradezco el aporte, el «Set-DbatoolsInsecureConnection -SessionOnly» me sirvió mucho, me ayudó a hacer que mi script corriera

    Responder
    1. solracamo dice:
      septiembre 23, 2024 a las 6:23 pm

      Me alegro un montón!

      Responder

Deja una respuesta Cancelar la respuesta

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

Consultoria Gratis

¿Tienes un problema o una consulta sobre tu servidor SQL Server? ¿Necesitas hacer algún tipo de mantenimiento o tarea en tu instancia, pero no tienes claro cómo hacerlo?

Envíame un email con tu caso y te contestaré lo antes posible de forma totalmente gratuita.

Puedes utilizar el formulario que encontrarás haciendo click aquí.

Sobre mi

Efectivamente, soy un muñeco de slack con la camiseta de Fernando Alonso en Renault, pero también soy una DBA mid level que vive y trabaja en inglaterra como consultor SQL Server.

El objetivo de este blog es escribir los problemas con los que me he ido encontrando y cómo los solucioné. Si estas soluciones han servido para mí, es posible que también lo hagan para ti, ¿no?

Otras soluciones

  • Recuperar la password de la cuenta SA en SQL Serveroctubre 5, 2024
  • Always On en SQL Server. Todo lo que necesitas saberagosto 24, 2024
  • Recuperar una tabla borrada en SQL Serveragosto 18, 2024
  • Mover bases de datos a otro disco en SQL Serveragosto 11, 2024
  • Comprobar los últimos backups tomados en una instancia SQL Serverjunio 29, 2024
  • Comprobar fragmentación en SQL Serverjunio 23, 2024

Curso Azure DP-300 Gratis

  • Azure DP-300 curso en Español – Parte 1noviembre 17, 2022
  • Crear una máquina virtual con SQL server en Azurenoviembre 17, 2022
  • Crear un servidor SQL Server en Azure.noviembre 22, 2022
  • Azure DP-300 curso en Español – Parte 2noviembre 24, 2022
  • Azure DP-300 curso en Español – Parte 3diciembre 1, 2022
  • Azure DP-300 curso en Español – Parte 4diciembre 14, 2022

Consulta las páginas que nadie consulta:
Privacidad
Cookies

Escríbeme!
Contacto

© 2025 Diario de un DBA