¿Cómo puedo clonar una base de datos de SQL Server en el mismo servidor en SQL Server 2008 Express?

Resuelto Sergio asked hace 14 años • 18 respuestas

Tengo un sistema MS SQL Server 2008 Express que contiene una base de datos que me gustaría "copiar y cambiar el nombre" (con fines de prueba), pero no conozco una forma sencilla de lograrlo.

Noto que en la versión R2 de SQL Server hay un asistente para copiar la base de datos, pero lamentablemente no puedo actualizar.

La base de datos en cuestión tiene alrededor de un concierto. Intenté restaurar una copia de seguridad de la base de datos que quiero copiar en una nueva base de datos, pero no tuve suerte.

Sergio avatar Sep 30 '10 16:09 Sergio
Aceptado
  1. Instale Microsoft SQL Management Studio, que puede descargar de forma gratuita desde el sitio web de Microsoft:

    Versión 2008

    Microsoft SQL Management Studio 2008 es parte de SQL Server 2008 Express con servicios avanzados

    Versión 2012

    Haga clic en el botón de descarga y verifiqueENU\x64\SQLManagementStudio_x64_ENU.exe

    Versión 2014

    Haga clic en el botón de descarga y verifique MgmtStudio64BIT\SQLManagementStudio_x64_ENU.exe

  2. Abra Microsoft SQL Management Studio .

  3. Haga una copia de seguridad de la base de datos original en un archivo .BAK (db -> Tarea -> Copia de seguridad).
  4. Cree una base de datos vacía con un nuevo nombre (clon). Tenga en cuenta los comentarios a continuación, ya que esto es opcional.
  5. Haga clic para clonar la base de datos y abrir el cuadro de diálogo de restauración (ver imagen) restaurar diálogo
  6. Seleccione Dispositivo y agregue el archivo de copia de seguridad del paso 3. agregar archivo de respaldo
  7. Cambiar destino a la base de datos de prueba cambiar destino
  8. Cambie la ubicación de los archivos de la base de datos, debe ser diferente a la original. Puede escribir directamente en el cuadro de texto, simplemente agregue postfix. (NOTA: el orden es importante. Seleccione la casilla de verificación y luego cambie los nombres de los archivos). cambiar locación
  9. Verifique CON REEMPLAZO y CON KEEP_REPLICATION con reemplazar
Tomas Kubes avatar Oct 08 '2014 20:10 Tomas Kubes

Haga clic derecho en la base de datos para clonar, haga clic en Tasks, haga clic en Copy Database.... Sigue al asistente y listo.

DForck42 avatar Sep 30 '2010 18:09 DForck42

Puede intentar desconectar la base de datos, copiar los archivos con nuevos nombres en el símbolo del sistema y luego adjuntar ambas bases de datos.

En SQL:

USE master;
GO 
EXEC sp_detach_db
    @dbname = N'OriginalDB';
GO

En el símbolo del sistema (he simplificado las rutas de los archivos para este ejemplo):

copy c:\OriginalDB.mdf c:\NewDB.mdf
copy c:\OriginalDB.ldf c:\NewDB.ldf

En SQL nuevamente:

USE master;
GO
CREATE DATABASE OriginalDB
    ON (FILENAME = 'C:\OriginalDB.mdf'),
       (FILENAME = 'C:\OriginalDB.ldf')
    FOR ATTACH;
GO
CREATE DATABASE NewDB
    ON (FILENAME = 'C:\NewDB.mdf'),
       (FILENAME = 'C:\NewDB.ldf')
    FOR ATTACH;
GO
Joe Stefanelli avatar Sep 30 '2010 13:09 Joe Stefanelli