Compartir a través de


Exportación e importación de una base de datos en Linux con SSMS o SqlPackage.exe en Windows

Se aplica a: SQL Server - Linux

En este artículo se muestra cómo usar SQL Server Management Studio (SSMS) y SqlPackage.exe para exportar e importar una base de datos en SQL Server en Linux. SSMS y SqlPackage.exe son aplicaciones Windows, así que use esta técnica cuando tenga un equipo Windows que pueda conectarse a una instancia remota de SQL Server en Linux.

Siempre debe instalar y usar la versión más reciente de SSMS, tal como se describe en Usar SQL Server Management Studio en Windows para administrar SQL Server en Linux.

Para obtener más información sobre cómo migrar una base de datos de una instancia de SQL Server a otra, consulte Migración de una base de datos SQL Server de Windows a Linux mediante Copia de seguridad y restauración.

Exportación de una base de datos con SSMS

  1. Para iniciar SSMS, escriba Microsoft SQL Server Management Studio en el cuadro de búsqueda de Windows y, a continuación, haga clic en la aplicación de escritorio.

    Captura de pantalla de SQL Server Management Studio.

  2. Conéctese a la base de datos de origen en el Explorador de objetos. La base de datos de origen puede estar en la instancia de Microsoft SQL Server que se ejecuta de forma local o en la nube, en Linux, en Windows o en Docker, y en Base de datos de Azure SQL o en Azure Synapse Analytics.

  3. Haga clic con el botón derecho en el Explorador de objetos, seleccione Tareas y seleccione Exportar aplicación de capa de datos…

  4. En el Asistente para exportar, seleccione Siguiente y, en la pestaña Configuración, configure la exportación para guardar el archivo BACPAC en una ubicación de disco local o en un blob de Azure.

  5. De forma predeterminada, se exportan todos los objetos de la base de datos. Seleccione la pestaña Opciones avanzadas y elija los objetos de base de datos que quiere exportar.

  6. Seleccione Siguiente y después Finalizar.

El archivo .bacpac se crea correctamente en la ubicación elegida y ya puede importarlo en una base de datos de destino.

Importación de una base de datos con SSMS

  1. Para iniciar SSMS, escriba Microsoft SQL Server Management Studio en el cuadro de búsqueda de Windows y, a continuación, haga clic en la aplicación de escritorio.

    Captura de pantalla de SQL Server Management Studio de nuevo.

  2. Conéctese al servidor de destino en el Explorador de objetos. El servidor de destino puede estar en la instancia de Microsoft SQL Server que se ejecuta de forma local o en la nube, en Linux, en Windows o en Docker, y en Base de datos de Azure SQL o en Azure Synapse Analytics.

  3. Haga clic con el botón derecho en la carpeta Bases de datos del Explorador de objetos y seleccione Importar la aplicación de capa de datos.

  4. Para crear la base de datos en el servidor de destino, especifique un archivo BACPAC del disco local o seleccione la cuenta de Azure Storage y el contenedor en el que ha cargado el archivo BACPAC.

  5. Proporcione un nombre para la nueva base de datos. Si va a importar una base de datos en Azure SQL Database, establezca la edición de Microsoft Azure SQL Database (nivel de servicio), el tamaño máximo de la base de datos y el objetivo del servicio (nivel de rendimiento).

  6. Seleccione Siguiente y Finalizar para importar el archivo BACPAC a una base de datos nueva en el servidor de destino.

El archivo .bacpac se importa para crear una base de datos en el servidor de destino especificado.

Opción de línea de comandos SqlPackage

También es posible usar la herramienta de línea de comandos SQL Server Data Tools (SSDT), SqlPackage, para exportar e importar archivos BACPAC.

El siguiente comando de ejemplo exporta un archivo BACPAC:

SqlPackage.exe /a:Export /ssn:tcp:<your_server> /sdn:<your_database> /su:<username> /sp:<password> /tf:<path_to_bacpac>

Use el comando siguiente para importar el esquema de la base de datos y los datos de usuario de un archivo .bacpac:

SqlPackage.exe /a:Import /tsn:tcp:<your_server> /tdn:<your_database> /tu:<username> /tp:<password> /sf:<path_to_bacpac>