Mover las bases de datos del servidor de informes a otro equipo

Las bases de datos del servidor de informes que se utilizan en la instalación actual se pueden mover a una instancia de Database Engine (Motor de base de datos) de SQL Server que se encuentre en un equipo diferente. Las bases de datos reportserver y reportservertempdb se deben copiar y mover juntas. Una instalación de Reporting Services requiere las dos bases de datos; la base de datos reportservertempdb debe estar relacionada por nombre con la base de datos reportserver principal que se vaya a mover.

Mover una base de datos no afecta a las operaciones programadas que están actualmente definidas para los elementos del servidor de informes.

  • Las programaciones se volverán a crear la primera vez que se reinicie el servicio del servidor de informes.

  • Los trabajos del Agente SQL Server que se usen para activar una programación se volverán a crear en la nueva instancia de la base de datos. No tiene que mover los trabajos al nuevo equipo, pero quizá desee eliminar los trabajos del equipo que ya no se van a utilizar.

  • Las suscripciones, los informes almacenados en caché y las instantáneas se mantienen en la base de datos que se ha movido. Si una instantánea no está recopilando los datos actualizados después de que se mueva la base de datos, borre las opciones de instantánea en el Administrador de informes, haga clic en Aplicar para guardar los cambios, vuelva a crear la programación y haga clic en Aplicar de nuevo para guardar los cambios.

  • Los datos temporales de los informes y de las sesiones de usuario que se almacenan en reportservertempdb se mantienen al mover esa base de datos.

SQL Server proporciona varios métodos para mover bases de datos, como las operaciones de copia de seguridad y restauración, adjuntar y separar, y copiar. No todos los métodos son adecuados para reubicar una base de datos existente en una instancia de servidor nueva. El método recomendado para mover una base de datos del servidor de informes varía en función de sus requisitos de disponibilidad del sistema. La manera más sencilla de mover bases de datos del servidor de informes es adjuntarlas y separarlas. Sin embargo, este método requiere que el servidor de informes esté sin conexión mientras se separa la base de datos. Las operaciones de copia de seguridad y restauración son la opción más adecuada si se desean reducir al mínimo las interrupciones del servicio, pero deben ejecutarse comandos Transact-SQL para realizarlas. No se recomienda copiar la base de datos, en especial mediante el Asistente para copiar bases de datos, ya que no se conserva la configuración de permisos de la base de datos.

Nota importanteImportante

Los pasos que se proporcionan en este tema se recomiendan cuando el cambio de ubicación de la base de datos del servidor de informes es el único cambio que se realiza en la instalación existente. Para migrar una instalación completa de Reporting Services (es decir, mover la base de datos y cambiar la identidad del servicio Windows del servidor de informes que utiliza la base de datos), es necesario volver a configurar la conexión y restablecer una clave de cifrado. Para obtener más información acerca de cómo migrar una instalación de Reporting Services, vea Migración (Reporting Services).

Separar y adjuntar bases de datos del servidor de informes

Si puede cerrar la conexión del servidor de informes, puede separar las bases de datos para moverlas a la instancia de SQL Server que desee utilizar. Los permisos de las bases de datos se conservan con este enfoque. Si utiliza una base de datos de SQL Server 2008, debe moverla a otra instancia de SQL Server 2008. Después de mover las bases de datos, debe volver a configurar la conexión del servidor de informes con la base de datos del servidor de informes. Si se utiliza una implementación escalada, debe volver a configurar la conexión de la base de datos del servidor de informes para cada servidor de informes de la implementación.

Lleve a cabo los siguientes pasos para mover las bases de datos:

  1. Haga una copia de seguridad de las claves de cifrado de la base de datos del servidor de informes que desee mover. Puede utilizar la herramienta de configuración Reporting Services para hacer una copia de seguridad de las claves.

  2. Detenga el servicio del servidor de informes. Puede utilizar la herramienta de configuración Reporting Services para ello.

  3. Inicie SQL Server Management Studio y abra una conexión con la instancia de SQL Server que hospede las bases de datos del servidor de informes.

  4. Haga clic con el botón secundario en la base de datos del servidor de informes, elija Tareas y haga clic en Separar. Repita este paso para la base de datos temporal del servidor de informes.

  5. Copie o mueva los archivos .mdf y .ldf a la carpeta de datos de la instancia de SQL Server que desee utilizar. Dado que se van a mover dos bases de datos, asegúrese de que mueve o copia los cuatro archivos.

  6. En Management Studio, abra una conexión con la nueva instancia de SQL Server que hospedará las bases de datos del servidor de informes.

  7. Haga clic con el botón secundario en el nodo de las bases de datos y, a continuación, haga clic en Adjuntar.

  8. Haga clic en Agregar para seleccionar los archivos .mdf y .ldf de la base de datos del servidor de informes que desee adjuntar. Repita este paso para la base de datos temporal del servidor de informes.

  9. Una vez adjuntadas las bases de datos, compruebe que RSExecRole existe como función de la base de datos en la base de datos del servidor de informes y en la base de datos temporal. RSExecRole debe tener permisos de selección, inserción, actualización, eliminación y referencia en las tablas de base de datos del servidor de informes, además de permisos de ejecución en los procedimientos almacenados. Para obtener más información, vea Cómo crear RSExecRole.

  10. Inicie la herramienta de configuración de Reporting Services y abra una conexión con el servidor de informes.

  11. En la página Base de datos, seleccione la nueva instancia de SQL Server y haga clic en Conectar.

  12. Seleccione la base de datos del servidor de informes que acaba de mover y haga clic en Aplicar.

  13. En la página Claves de cifrado, haga clic en Restaurar. Especifique el archivo que contiene la copia de seguridad de las claves y la contraseña para desbloquear el archivo.

  14. Reinicie el servicio del servidor de informes.

Realizar copias de seguridad de las bases de datos del servidor de informes y restaurarlas

Si no puede cerrar la conexión del servidor de informes, puede usar la función de copia de seguridad y restauración para cambiar la ubicación de las bases de datos del servidor de informes. Debe usar la opción ‘Copy_Only’. A partir de SQL Server 2008, SQL Server Management Studio admite copias de seguridad de solo copia. Después de restaurar las bases de datos, debe configurar el servidor de informes para usar la base de datos en la nueva instancia del servidor. Para obtener más información, vea las instrucciones que se encuentran al final de este tema.

Usar BACKUP y COPY_Only para realizar copias de seguridad de las bases de datos del servidor de informes

Cuando realice una copia de seguridad de las bases de datos, establezca la opción COPY_OnlyL y el tipo de copia de seguridad en Completa.

[!NOTA]

Asegúrese de realizar la copia de seguridad de estas dos bases de datos ReportServer y ReportServerTempDB, así como de sus archivos de registro asociados.

Para obtener más información sobre el uso de SQL Server Management Studio para realizar una copia de seguridad de una base de datos, vea Cómo realizar una copia de seguridad de una base de datos (SQL Server Management Studio)

Usar RESTORE y MOVE para cambiar la ubicación de las bases de datos del servidor de informes

Cuando restaure las bases de datos, puede usar el argumento RESTORE WITH NORECOVERY para realizar la restauración inicial. De esta manera, la base de datos se mantiene en estado de restauración y tendrá tiempo para revisar las copias de seguridad de los registros y determinar cuál desea restaurar. A continuación, repetiría la operación RESTORE pero con el argumento RESTORE WITH RECOVERY.

[!NOTA]

Asegúrese de restaurar estas dos bases de datos ReportServer y ReportServerTempDB, así como de sus archivos de registro asociados.

Para obtener más información sobre el uso de SQL Server Management Studio para restaurar una base de datos, vea Cómo restaurar una copia de seguridad de base de datos (SQL Server Management Studio)

Cómo configurar la conexión de la base de datos del servidor de informes

  1. Inicie la herramienta de configuración de Reporting Services y abra una conexión con el servidor de informes.

  2. En la página Base de datos, haga clic en Cambiar base de datos. Haga clic en Siguiente.

  3. Haga clic en Elegir una base de datos del servidor de informes existente. Haga clic en Siguiente.

  4. Seleccione la instancia de SQL Server que ahora hospeda la base de datos del servidor de informes y haga clic en Probar conexión. Haga clic en Siguiente.

  5. En Nombre de la base de datos, seleccione la base de datos del servidor de informes que desee utilizar. Haga clic en Siguiente.

  6. En Credenciales, especifique las credenciales que utilizará el servidor de informes para conectarse a la base de datos del servidor de informes. Haga clic en Siguiente.

  7. Haga clic en Siguiente y, a continuación, en Finalizar.

[!NOTA]

Una instalación de Reporting Services requiere que la instancia de SQL Server Database Engine (Motor de base de datos de SQL Server) incluya la función RSExecRole. La creación de funciones, el registro de inicio de sesión y las asignaciones de funciones tienen lugar cuando se establece la conexión de la base de datos del servidor de informes a través de la herramienta de configuración de Reporting Services. Si se utilizan métodos alternativos (concretamente, si se usa la herramienta del símbolo del sistema rsconfig.exe) para configurar la conexión, el servidor de informes no estará en estado de funcionamiento. Es posible que tenga que escribir código WMI para que el servidor de informes esté disponible. Para obtener más información, vea Proveedor WMI de Reporting Services.