Copiar bases de datos con Copias de seguridad y restauración

En SQL Server 2012, se puede crear una base de datos nueva restaurando una copia de seguridad de una base de datos creada utilizando SQL Server 2005 o una versión posterior. Sin embargo, las copias de seguridad de las bases de datos maestra, de modelos y msdb creadas utilizando una versión anterior de SQL Server no pueden restaurarse con SQL Server 2012. Asimismo, las copias de seguridad de SQL Server 2012 no se pueden restaurar con versiones anteriores de SQL Server.

Nota importanteImportante

SQL Server 2012 utiliza una ruta de acceso predeterminada distinta de la de versiones anteriores. Por lo tanto, para restaurar copias de seguridad de una base de datos creadas en la ubicación predeterminada de SQL Server 2005 o SQL Server 2008 es preciso utilizar la opción MOVE. Para obtener información acerca de la nueva ruta de acceso predeterminada, vea Ubicaciones de archivos para las instancias predeterminadas y con nombre de SQL Server. Para obtener más información acerca de cómo mover archivos de base de datos, vea el apartado "Mover los archivos de base de datos" que figura más adelante en este tema.

Pasos generales para utilizar las copias de seguridad y restauración para copiar una base de datos

Cuando se utilizan las copias de seguridad y restauración para copiar una base de datos a otra versión de SQL Server, los equipos de origen y de destino pueden ser de cualquier plataforma en la que se ejecute SQL Server.

Los pasos generales son:

  1. Cree una copia de seguridad de la base de datos de origen que pueda residir en una instancia de SQL Server 2005 o posterior. El equipo en el que se ejecute esta instancia de SQL Server será el equipo de origen.

  2. En el equipo al que desee copiar la base de datos (el equipo de destino), conéctese a una sesión de SQL Server en la que tenga previsto restaurar la base de datos. Si es necesario, cree en la instancia de servidor de destino los mismos dispositivos de copia de seguridad utilizados para la copia de seguridad de las bases de datos de origen.

  3. Restaure la copia de seguridad de la base de datos de origen en el equipo de destino. Al restaurar la base de datos se crean automáticamente todos los archivos de la base de datos.

En los siguientes temas se abordan aspectos adicionales que pueden afectar al proceso.

Antes de restaurar los archivos de base de datos

La restauración de una base de datos crea automáticamente los archivos de base de datos necesarios para la base de datos que se restaura. De forma predeterminada, los archivos que crea SQL Server durante el proceso de restauración utilizan los mismos nombres y las mismas rutas de acceso que los archivos de copia de seguridad de la base de datos original en el equipo de origen.

Opcionalmente, cuando se restaura la base de datos se pueden especificar la asignación de dispositivos, los nombres de archivo o la ruta de acceso para dicha base de datos. Esto puede ser necesario en las situaciones siguientes:

  • La asignación de unidades o la estructura de directorios utilizadas por la base de datos en el equipo original no existen en el otro equipo. Por ejemplo, quizás la copia de seguridad contiene un archivo que se restauraría en la unidad E de forma predeterminada, pero el equipo de destino no tiene una unidad E.

  • Es posible que no haya espacio suficiente en la ubicación de destino.

  • Se está utilizando un nombre de base de datos que existe en el destino de restauración y alguno de los archivos tiene el mismo nombre que un archivo de base de datos del conjunto de copia de seguridad; puede ocurrir lo siguiente:

    • Si el archivo de base de datos existente se puede sobrescribir, se sobrescribirá (esto no afectaría a un archivo que perteneciese a un nombre de base de datos diferente).

    • Si el archivo existente no se puede sobrescribir, se producirá un error de restauración.

Para evitar errores y consecuencias no deseadas, antes de la operación de restauración puede utilizar la tabla de historial backupfile para buscar los archivos de base de datos y de registro en la copia de seguridad que va a restaurar.

Mover los archivos de base de datos

Si no se pueden restaurar los archivos de la copia de seguridad de la base de datos en el equipo de destino debido a las razones mencionadas anteriormente, es necesario mover los archivos a una nueva ubicación a medida que se restauran. Por ejemplo:

  • Suponga que desea restaurar una base de datos a partir de las copias de seguridad creadas en la ubicación predeterminada de SQL Server 2005 o SQL Server 2008.

  • Puede ser necesario restaurar algunos archivos de base de datos de la copia de seguridad en una unidad diferente debido a consideraciones de capacidad. Probablemente se trate de un hecho frecuente, porque la mayor parte de los equipos de una organización no tienen el mismo número y tamaño de unidades de disco o idénticas configuraciones de software.

  • Puede ser necesario crear una copia de una base de datos existente en el mismo equipo para realizar pruebas. En este caso, los archivos de la base de datos original ya existen, por lo que se necesita especificar diferentes nombres de archivo al crear la copia de la base de datos durante la operación de restauración.

Para obtener más información, vea el apartado "Para restaurar archivos y grupos de archivos en una nueva ubicación" que figura más adelante en este mismo tema.

Cambiar el nombre de la base de datos

Se puede cambiar el nombre de la base de datos cuando se restaura en el equipo de destino, sin necesidad de restaurar primero la base de datos y después cambiar manualmente el nombre. Por ejemplo, es posible que sea necesario cambiar el nombre de la base de datos de Sales a SalesCopy para indicar que se trata de una copia de la base de datos.

El nombre de base de datos que se proporciona explícitamente al restaurar una base de datos se utiliza de forma automática como el nuevo nombre de la base de datos. Debido a que el nombre de la base de datos no existe, se crea uno nuevo con los archivos de la copia de seguridad.

Actualizar una base de datos utilizando la restauración

Al restaurar copias de seguridad de SQL Server 2005 o SQL Server 2008, es útil conocer de antemano si la ruta de acceso (unidad y directorio) de cada uno de los catálogos de texto completo de una copia de seguridad existe en el equipo de destino. Para obtener una lista de los nombres lógicos y físicos, la ruta y el nombre de archivo de todos los archivos de una copia de seguridad, incluidos los archivos de catálogo, utilice una instrucción RESTORE FILELISTONLY FROM <backup_device>. Para obtener más información, vea RESTORE FILELISTONLY (Transact-SQL).

Si no existe la misma ruta de acceso en el equipo de destino, son dos las alternativas válidas:

  • Cree la asignación de unidades/directorios equivalente en el equipo de destino.

  • Mueva los archivos de catálogo a una ubicación nueva durante la operación de restauración con la cláusula WITH MOVE de la instrucción RESTORE DATABASE. Para obtener más información, vea RESTORE (Transact-SQL).

Para obtener información sobre las opciones alternativas para actualizar índices de texto completo, vea Actualizar la búsqueda de texto completo desde SQL Server 2005.

Propiedad de la base de datos

Cuando se restaura una base de datos en otro equipo, el inicio de sesión de SQL Server o el usuario de Microsoft Windows que inicia la operación de restauración se convierte automáticamente en el propietario de la nueva base de datos. Una vez restaurada la base de datos, el administrador del sistema o el nuevo propietario de la base de datos pueden cambiar la propiedad de la base de datos. Para evitar restauraciones no autorizadas de una base de datos, utilice contraseñas en los medios o en el conjunto de copia de seguridad.

Administrar metadatos al restaurar una base de datos en otra instancia de servidor

Al restaurar una base de datos en otra instancia de servidor, para proporcionar una experiencia coherente a los usuarios y las aplicaciones, puede que tenga que volver a crear algunos o todos los metadatos de la base de datos, por ejemplo los inicios de sesión y los trabajos, en la otra instancia de servidor. Para obtener más información, vea Administrar los metadatos cuando una base de datos pasa a estar disponible en otra instancia de servidor (SQL Server).

Para ver los archivos de datos y de registro en un conjunto de copia de seguridad

Para restaurar archivos y grupos de archivos en una nueva ubicación

Para restaurar archivos y grupos de archivos sobre archivos existentes

Para restaurar una base de datos con un nuevo nombre

Para reiniciar una operación de restauración interrumpida

Para cambiar el propietario de una base de datos

Para copiar una base de datos mediante los objetos de administración de SQL Server (SMO)

Vea también

Referencia

RESTORE FILELISTONLY (Transact-SQL)

RESTORE (Transact-SQL)

Conceptos

Copiar bases de datos en otros servidores

Ubicaciones de archivos para las instancias predeterminadas y con nombre de SQL Server