Actualizar bases de datos replicadasUpgrade Replicated Databases

ESTE TEMA SE APLICA A: síSQL Server (solo para Windows)noAzure SQL DatabasenoAzure SQL Data WarehousenoAlmacenamiento de datos paralelos THIS TOPIC APPLIES TO: yesSQL Server (Windows only)noAzure SQL DatabasenoAzure SQL Data WarehousenoParallel Data Warehouse

SQL ServerSQL Server admite la actualización de bases de datos replicadas desde versiones anteriores de SQL ServerSQL Server; no es necesario detener la actividad en otros nodos mientras se actualiza un nodo. supports upgrading replicated databases from previous versions of SQL ServerSQL Server; it is not required to stop activity at other nodes while a node is being upgraded. Asegúrese de cumplir las reglas relativas a la versión admitida en una topología:Ensure that you adhere to the rules regarding which versions are supported in a topology:

  • Un distribuidor puede ser de cualquier versión siempre que ésta sea mayor o igual que la versión del publicador (en muchos casos el distribuidor es la misma instancia que el publicador).A Distributor can be any version as long as it is greater than or equal to the Publisher version (in many cases the Distributor is the same instance as the Publisher).

  • Un publicador puede ser de cualquier versión siempre que ésta sea menor o igual que la versión del distribuidor.A Publisher can be any version as long as it less than or equal to the Distributor version.

  • La versión del suscriptor depende del tipo de publicación:Subscriber version depends on the type of publication:

    • Un suscriptor de una publicación transaccional puede ser de cualquiera de las dos versiones del publicador.A Subscriber to a transactional publication can be any version within two versions of the Publisher version. Por ejemplo, un publicador de SQL Server 2012 (11.x)SQL Server 2012 (11.x) puede tener suscriptores de SQL Server 2014 (12.x)SQL Server 2014 (12.x) y SQL Server 2016 (13.x)SQL Server 2016 (13.x) , y un publicador de SQL Server 2016 (13.x)SQL Server 2016 (13.x) puede tener suscriptores de SQL Server 2014 (12.x)SQL Server 2014 (12.x) y SQL Server 2012 (11.x)SQL Server 2012 (11.x) .For example: a SQL Server 2012 (11.x)SQL Server 2012 (11.x) Publisher can have SQL Server 2014 (12.x)SQL Server 2014 (12.x) and SQL Server 2016 (13.x)SQL Server 2016 (13.x) Subscribers; and a SQL Server 2016 (13.x)SQL Server 2016 (13.x) Publisher can have SQL Server 2014 (12.x)SQL Server 2014 (12.x) and SQL Server 2012 (11.x)SQL Server 2012 (11.x) Subscribers.

    • Un suscriptor de una publicación de combinación puede ser de cualquier versión menor o igual que la versión del publicador.A Subscriber to a merge publication can be any version less than or equal to the Publisher version.

Nota

Este artículo está disponible en la documentación de la Ayuda del programa de instalación y en los Libros en pantalla de SQL ServerSQL Server.This article is available in the Setup Help documentation and in SQL ServerSQL Server Books Online. los vínculos de artículos que aparecen en negrita en la documentación de la Ayuda del programa de instalación hacen referencia a artículos que solo se encuentran disponibles en los Libros en pantalla.article links that appear as bold text in the Setup Help documentation refer to articles that are only available in Books Online. Puede diseñar una estrategia de actualización para el publicador, el suscriptor y el distribuidor con las opciones descritas en esta entrada de blog.You can design an upgrade strategy for the Publisher, Subscriber and Distributor using the options outlined in this post.

Ejecutar el Agente de registro del LOG para la replicación transaccional antes de la actualizaciónRun the Log Reader Agent for Transactional Replication Before Upgrade

Antes de actualizar a SQL ServerSQL Server, debe asegurarse de que el Agente de registro del LOG ha procesado todas las transacciones confirmadas en las tablas publicadas.Before you upgrade SQL ServerSQL Server, you must make sure that all committed transactions from published tables have been processed by the Log Reader Agent. Para asegurarse de que se han procesado todas las transacciones, siga estos pasos para cada base de datos que contenga publicaciones transaccionales:To make sure that all transactions have been processed, perform the following steps for each database that contains transactional publications:

  1. Asegurarse de que el Agente de registro del LOG se está ejecutando para la base de datos.Make sure that the Log Reader Agent is running for the database. De forma predeterminada, el agente se ejecuta sin interrupción.By default, the agent runs continuously.

  2. Detenga la actividad de usuario en las tablas publicadas.Stop user activity on published tables.

  3. Deje tiempo para que el Agente de registro del LOG copie las transacciones en la base de datos de distribución y, a continuación, detenga el agente.Allow time for the Log Reader Agent to copy transactions to the distribution database, and then stop the agent.

  4. Ejecute sp_replcmds para comprobar que se han procesado todas las transacciones.Execute sp_replcmds to verify that all transactions have been processed. El conjunto de resultados de este procedimiento debe estar vacío.The result set from this procedure should be empty.

  5. Ejecute sp_replflush para cerrar la conexión de sp_replcmds.Execute sp_replflush to close the connection from sp_replcmds.

  6. Realice la actualización del servidor a la versión más reciente de SQL ServerSQL Server.Perform the server upgrade to the latest verison of SQL ServerSQL Server.

  7. Reinicie el Agente SQL ServerSQL Server y el Agente de registro del LOG si no se inician automáticamente después de la actualización.Restart SQL ServerSQL Server Agent and the Log Reader Agent if they do not start automatically after the upgrade.

Ejecutar agentes para la replicación de mezcla después de la actualizaciónRun Agents for Merge Replication After Upgrade

Después de la actualización, ejecute el Agente de instantáneas de cada publicación de combinación y el Agente de mezcla de cada suscripción para actualizar los metadatos de la replicación.After upgrade, run the Snapshot Agent for each merge publication and the Merge Agent for each subscription to update replication metadata. No tiene que aplicar la nueva instantánea porque no es necesaria para reinicializar las suscripciones.You do not have to apply the new snapshot, because it is not necessary to reinitialize subscriptions. Los metadatos de suscripción se actualizan la primera vez que el Agente de mezcla se ejecuta tras la actualización.Subscription metadata is updated the first time the Merge Agent is run after upgrade. Esto significa que la base de datos de suscripciones puede permanecer en línea y activa durante la actualización del publicador.This means that the subscription database can remain online and active during the Publisher upgrade.

La replicación de mezcla almacena metadatos de publicación y suscripción en un determinado número de tablas del sistema en las bases de datos de publicaciones y suscripciones.Merge replication stores publication and subscription metadata in a number of system tables in the publication and subscription databases. La ejecución del Agente de instantáneas actualiza los metadatos de publicación y la ejecución del Agente de mezcla actualiza los metadatos de suscripción.Running the Snapshot Agent updates publication metadata and running the Merge Agent updates subscription metadata. Solo es necesaria para generar una instantánea de publicación.It is only required to generate a publication snapshot. Si una publicación de combinación utiliza filtros con parámetros, cada partición también tendrá una instantánea.If a merge publication uses parameterized filters, each partition also has a snapshot. No es necesario actualizar estas instantáneas con particiones.It is not necessary to update these partitioned snapshots.

Ejecute los agentes desde SQL Server Management StudioSQL Server Management Studio, el Monitor de replicación o la línea de comandos.Run the agents from SQL Server Management StudioSQL Server Management Studio, Replication Monitor, or from the command line. Para más información sobre la ejecución del Agente de instantáneas, vea estos artículos:For more information about running the Snapshot Agent, see the following articles:

Actualizar a Standard Edition, Workgroup Edition o Express EditionUpgrading to Standard, Workgroup, or Express Editions

Antes de actualizar desde una edición de SQL ServerSQL Server a otra, compruebe que las funciones que actualmente usa son compatibles con la edición a la que quiere actualizar.Before upgrading from one edition of SQL ServerSQL Server to another, verify that the functionality you are currently using is supported in the edition to which you are upgrading. Para más información, vea la sección sobre replicación de Ediciones y características admitidas de SQL Server.For more information, see the section on Replication in Editions and supported features of SQL Server.

Sincronización web para la replicación de mezclaWeb Synchronization for Merge Replication

La opción de sincronización web para replicación de mezcla requiere que se copie el archivo Escucha de replicación de SQL ServerSQL Server (replisapi.dll) en el directorio virtual del servidor de Internet Information Services (IIS) que se usa para la sincronización.The Web synchronization option for merge replication requires that the SQL ServerSQL Server Replication Listener (replisapi.dll) be copied to the virtual directory on the Internet Information Services (IIS) server used for synchronization. Cuando se configura la sincronización web, se copia el archivo en el directorio virtual mediante el Asistente para configurar la sincronización web.When you configure Web synchronization, the file is copied to the virtual directory by the Configure Web Synchronization Wizard. Si se actualizan los componentes de SQL ServerSQL Server instalados en el servidor IIS, debe copiarse manualmente el archivo replisapi.dll del directorio COM en el directorio virtual del servidor IIS.If you upgrade the SQL ServerSQL Server components installed on the IIS server, you must manually copy replisapi.dll from the COM directory to the virtual directory on the IIS server. Para obtener más información sobre cómo configurar la sincronización web, vea Configurar la sincronización web.For more information about configuring Web synchronization, see Configure Web Synchronization.

Restaurar una base de datos replicada a partir de una versión anteriorRestoring a Replicated Database from an Earlier Version

Para asegurarse de que la configuración de replicación se conserva al restaurar una copia de seguridad de una base de datos replicada a partir de una versión anterior, restaure en un servidor y una base de datos con los mismos nombres que el servidor y la base de datos donde se realizó la copia de seguridad.To ensure replication settings are retained when restoring a backup of a replicated database from a previous version: restore to a server and database with the same names as the server and database at which the backup was taken.

Ver tambiénSee Also

Administración (replicación) Administration (Replication)
Compatibilidad con versiones anteriores de replicación Replication Backward Compatibility
Novedades (Replicación) What's New (Replication)
Actualizaciones de ediciones y versiones admitidas Supported Version and Edition Upgrades
Actualizar SQL ServerUpgrade SQL Server