Saltar al contenido

Cómo restaurar una base de datos desde un archivo bak desde azure data studio en Mac

Solución:

  • Vaya a Azure Data Studios> Configuración
  • Edite la configuración haciendo clic en “nuevo editor de configuración”
  • Buscar “vista previa”
  • Desplácese hasta la parte inferior y marque “Habilitar funciones de vista previa no publicadas”.

Agregando esto como respuesta ya que no tengo suficiente representante para comentar. Esto es en respuesta a la pregunta en el comentario para la respuesta al OP (¡si eso no es lo suficientemente confuso!)

Esto solo se aplica cuando su base de datos SQL está alojada en un contenedor Mac / Linux / Docker. No tenemos ningún servidor de Windows en nuestro patrimonio para que pueda probar esto para ver si la ubicación de los archivos .bak es diferente.

Cuando hace clic en el botón “…”, navega a / var / opt / mssql / data en la máquina (o contenedor de la ventana acoplable) donde está alojada la base de datos. Esto no es un problema si está haciendo una copia de seguridad y restaurando bases de datos en el mismo host, sin embargo, si está migrando a un nuevo servidor o simplemente está creando un entorno dev / UAT / staging, se convierte en un problema porque no tiene acceso a var / opt / mssql / data.

Esto es un poco mazo para romper una solución tipo tuerca, pero como estoy trabajando con 2 cajas de desarrollo, no hace mucha diferencia para mí.

Para que esto sea más fácil de entender, llamaré al servidor que aloja la base de datos de la que ha realizado una copia de seguridad. ProdServ y el servidor al que está restaurando DevServ.

En DevServ, en un indicador de terminal, navegue hasta / var / opt y tome nota de los permisos actuales en el directorio mssql (los míos eran drwxrwx —).

$ cd /var/opt

$ ls -la

Google el valor octal para sus permisos (en mi caso, es 770)

Cambie los permisos del directorio de datos a rwxrwxrwx.

$ chmod -R 777 /var/opt/mssql/data

(También deberá hacer esto en ProdServ si también es un sistema operativo basado en Unix)

Copie los archivos .bak de ProdServ a DevServ a través de un método adecuado al entorno en el que está trabajando.

Windows -> Linux usaría WinSCP

Para Mac a Docker, docker cp <fileToCopy> <container>:<destinationPath> funciona perfectamente bien.

Una vez que los archivos se hayan copiado, aparecerán mágicamente cuando haga clic en el botón “…” en Azure Data Studio nuevamente. Asegúrese de volver a cambiar los permisos del directorio a su valor original mediante el mismo comando. Entonces, en mi caso, simplemente

$ chmod -R 770 /var/opt/mssql/data

Como nota adicional, si está acostumbrado a trabajar en MSSMS, el asistente le permite crear una base de datos a partir de un archivo .bak, por lo que puedo ver, Azure Data Studio no. Primero tienes que crear la base de datos (CREATE DATABASE <databasename>) en una ventana de consulta, luego restaure el archivo .bak en ella.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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