sql >> Base de Datos >  >> RDS >> Database

Cómo crear una replicación de instantáneas

El concepto de replicación de instantáneas es simple. Genera y distribuye la instantánea del esquema y los datos de los artículos, apareció en un momento específico y actualiza los cambios en las suscripciones. Cuando creamos una replicación de instantáneas, SQL Server crea un trabajo de agente de instantáneas que genera una instantánea de los objetos de la base de datos de publicaciones. La instantánea se almacena en una ubicación de red o en el disco duro. Puede definir el intervalo para generar la instantánea mediante el programa de trabajo de SQL.

Configuración de demostración

Para esta demostración, he creado dos instancias de SQL Server en un servidor de base de datos. Los nombres de las instancias y los detalles son los siguientes:

[identificación de la tabla=54 /]

En la configuración de demostración, no he creado un distribuidor, por lo que la instancia del editor también actuará como distribuidor. Voy a replicar tablas y datos que pertenecen a la Persona esquema de la base de datos AdventureWorks2014.

Configuración del publicador

Para configurar el publicador, abra el estudio de administración de SQL Server, expanda la instancia de la base de datos, expanda la Replicación nodo, haga clic con el botón derecho en Publicación local y seleccione Nueva publicación . Ver la siguiente imagen:

Se inicia el Asistente para nueva publicación. En la pantalla se muestra un breve resumen del asistente. Puede omitir esta pantalla marcando la casilla No volver a mostrar esta página de inicio caja. Haga clic en Siguiente para pasar a la pantalla siguiente. Ver la siguiente imagen:

En la siguiente pantalla, seleccione la base de datos que actúa como editor. En esta demostración, estoy usando AdventureWorks2014 base de datos, por lo tanto seleccione AdventureWorks2014 base de datos de la lista de bases de datos y haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, seleccione un tipo de publicación. Los tipos se enumeran en el cuadro de lista Tipos de publicación y, para el tipo de publicación individual, sus descripciones también se explican en Descripción del tipo de publicación. caja de texto. Seleccione Replicación de instantáneas n y haga clic en Siguiente . Ver la siguiente imagen:

En la replicación, los objetos de la base de datos se conocen como artículos. Sobre los Artículos pantalla, se muestra la lista de objetos de base de datos dentro de la base de datos de publicación. Voy a replicar los datos de todas las tablas que pertenecen al esquema de Persona, por lo tanto, seleccione las tablas que pertenecen al esquema de Persona de la lista de artículos y haga clic en Siguiente . Ver la siguiente imagen:

Para inicializar la replicación, necesitamos generar una instantánea. En el agente de instantáneas pantalla, configure el intervalo de generación de instantáneas. Puede generar inmediatamente la instantánea o puede programar la hora específica para generar la instantánea de la base de datos. De forma predeterminada, la instantánea se genera cada hora, pero podemos cambiarla. Para generar una instantánea en un intervalo específico, haga clic en Cambiar . El Programa de trabajo nuevo se abre el cuadro de diálogo. Configure el horario deseado y haga clic en Aceptar . Ver la siguiente imagen:

En esta demostración, generaré una instantánea de inmediato, por lo tanto, marque Crear una instantánea y mantener la instantánea disponible para inicializar la suscripción opción y haga clic en Siguiente.

En la siguiente pantalla, configure la seguridad del Agente SQL. Para configurar la seguridad del agente, haga clic en Configuración de seguridad botón. La seguridad del agente de instantáneas se abre el cuadro de diálogo. En el cuadro de diálogo, proporcione la cuenta con la que el suscriptor se conecta al editor. Además, proporcione la información de la cuenta con la que se ejecutará el trabajo del agente de SQL Server. Para esta demostración, los trabajos de SQL Server se ejecutan con la cuenta de servicio del agente de SQL Server, por lo tanto, seleccione Ejecutar con la cuenta de servicio del Agente de SQL Server. opción. Los suscriptores se conectarán al editor mediante el inicio de sesión de SQL, por lo tanto, seleccione Usando la siguiente opción de inicio de sesión de SQL Server y proporcione el nombre de usuario y la contraseña de SQL. En esta demostración, conéctese usando sa acceso. Haz clic en Aceptar para cerrar el cuadro de diálogo y haga clic en Siguiente t. Ver la siguiente imagen:

En la siguiente pantalla, puede optar por crear una publicación o generar los scripts para crear la publicación. Seleccione Generar un archivo de script para crear la publicación opción para generar los scripts de los pasos de replicación. Crearemos una publicación, de ahí seleccionamos la opción Crear la publicación opción y haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, proporcione el nombre de la publicación, revise el resumen de las tareas a realizar para crear la replicación y haga clic en Finalizar para crear la publicación y cerrar el Asistente para nueva publicación. Ver la siguiente imagen:

Como mencioné al principio del artículo, cuando creamos una replicación de instantáneas, SQL crea un trabajo que crea una instantánea y almacena los archivos de instantáneas en el directorio predeterminado.

Para verlos, expanda Agente SQL Server>> expandir Empleos . Ver la siguiente imagen:

Una vez configurada la publicación, configure los suscriptores.

Configuración de suscriptor

Para configurar el suscriptor, primero, conéctese a otra instancia de SQL. Después de conectarse a la instancia, expanda la replicación y haga clic con el botón derecho en Suscripción local. . Ver la siguiente imagen:

Asistente para nuevas suscripciones se abre En la pantalla se muestra un breve resumen del asistente. Puede omitir esta pantalla marcando la casilla No volver a mostrar esta página de inicio. caja. Haga clic en Siguiente para pasar a la pantalla siguiente. Ver la siguiente imagen:

En la siguiente pantalla, elija el servidor de publicación. Haga clic en Editor cuadro desplegable y seleccione Buscar SQL Server Publisher de la lista. Se abre un cuadro de diálogo para conectar el publicador. En el cuadro de texto del nombre del servidor, proporcione el nombre de host del servidor publicador y haga clic en conectar. Ver la siguiente imagen:

Una vez establecida la conexión con el editor, Snapshot_Replication publicación y AdventureWorks2014 la base de datos se mostrará en Bases de datos y publicación caja de texto. Seleccione Snapshot_Replication y haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, elija la ubicación del agente de distribución. Para esta demostración, usaré Pull Subscription , por lo tanto, seleccione Ejecutar cada agente en su suscriptor opción y haga clic en Siguiente :

En la siguiente pantalla, seleccione una base de datos de suscripciones. He creado una base de datos llamada Personas que actúa como una base de datos de suscriptores. En la base de datos de suscripciones cuadro desplegable, seleccione Personas base de datos de la lista. Después de seleccionar una base de datos de suscripciones, haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, configure la seguridad del agente de distribución. Para configurar la seguridad, haga clic en […] botón. La seguridad del agente de distribución se abre el cuadro de diálogo. En la primera sección, proporcione la cuenta de dominio bajo la cual se ejecutará el proceso del agente de distribución. El agente de distribución se ejecutará bajo el servicio del agente de SQL Server, por lo tanto, seleccione Ejecutar bajo la cuenta de servicio del agente de SQL Server opción.

Aquí no configuré el servidor de distribución, por lo tanto, el editor actúa como distribuidor. El suscriptor se conectará al publicador/distribuidor mediante el inicio de sesión de SQL. Para conectar el distribuidor, utilice el sa inicio de sesión y contraseña. Ver la siguiente imagen:

Haz clic en Aceptar para cerrar el cuadro de diálogo. Y en la Seguridad del Agente de Distribución pantalla, haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, configure el cronograma de sincronización de suscripciones. Puede elegir que se ejecute de forma continua o configurar la ejecución programada. Seleccione Ejecutar continuamente en el Horario del agente caja desplegable. Haga clic en Siguiente . Ver la siguiente imagen:

En la pantalla siguiente, elija si desea Inicializar la suscripción inmediatamente con la instantánea de los datos y el esquema de publicación o después de la primera sincronización. Inicializaremos la suscripción de inmediato, por lo tanto, elija Inmediatamente de Inicializar cuando caja desplegable. Haga clic en Siguiente . Ver la siguiente imagen:

En la siguiente pantalla, puede optar por crear una suscripción inmediatamente o generar los scripts para crear una suscripción. Seleccione Generar un archivo de script para crear la suscripción . Opción para generar los scripts de pasos de replicación. Crearemos una publicación, por lo tanto seleccione la opción Crear la suscripción y haga clic en Siguiente t. Ver la siguiente imagen:

En la siguiente pantalla, se proporciona una lista de tareas realizadas para crear una suscripción. Puede revisarlos y hacer clic en Finalizar . Ver la siguiente imagen:

Una vez que se crea la suscripción, puede verla en Suscripción local. nodo. Ver la siguiente imagen:

Cambiar la programación de instantáneas

Como comentaba, cuando creamos una publicación, podemos configurar un intervalo de instantáneas desde el Snapshot Agent pantalla. Podemos cambiar el intervalo de la instantánea cambiando la programación de un trabajo SQL de replicación de instantáneas. Para hacerlo, en el servidor del editor, expanda Agente SQL Server>> Ampliar Empleos y haga clic con el botón derecho en el trabajo de replicación de instantáneas (TTI412-VM\SQL2017-AdventureWorks2014-Snapshot_Replication-4) y seleccione Propiedades . Ver la siguiente imagen:

Se abre el cuadro de diálogo Propiedades del trabajo. Seleccione los Horarios seleccione la programación y haga clic en Editar . Ver la siguiente imagen:

El Programa de trabajo se abre el cuadro de diálogo. configure el horario adecuado y haga clic en Aceptar .

La configuración anterior genera una instantánea cada hora.

Cambio de ubicación de los archivos de instantáneas

También podemos poner los archivos de instantáneas en una carpeta diferente. Para esta demostración, los archivos de instantáneas se almacenan en la carpeta predeterminada que es E:\ReplicationSnapshot . Cambiaré los archivos de instantáneas de ubicación. La nueva ubicación será E:\Snapshot\PersonsSchema .

Podemos cambiar la ubicación de la instantánea desde las propiedades de la publicación. Para abrir las propiedades de la publicación, haga clic con el botón derecho en Publicación local en el servidor del editor y seleccione Propiedades. Ver la siguiente imagen:

Las Propiedades de publicación se abre el cuadro de diálogo. En el cuadro de diálogo, seleccione Instantánea . En la instantánea pantalla, borre la casilla Colocar archivos en la carpeta predeterminada y seleccione la opción Colocar archivos en la siguiente carpeta opción. Proporcione una nueva ruta en el cuadro de texto y haga clic en Aceptar . Ver la siguiente imagen:

Cuando realizamos este cambio, la instantánea actual deja de ser válida. Por lo tanto, después de cambiar esta configuración, recibirá una advertencia como se muestra en la siguiente imagen:

Haga clic en sí. Generará una nueva instantánea y guardará los archivos de instantáneas en E:\Snapshots\PersonsSchema\unc . Ver la siguiente imagen:

Ver el estado de la replicación

Puede usar Monitor de replicación para ver el estado de la replicación. Para abrir el monitor de replicación, expanda Replicatio n nodo>> expandir Publicaciones locales>> haga clic con el botón derecho en Snapshot_Replication y seleccione Iniciar Monitor de replicación . Ver la siguiente imagen.

Usando el monitor de replicación, puede ver:

  1. Estado de replicación
  2. Lista de suscripción
  3. Fecha y hora de la última sincronización.

Con el monitor de replicación, puede ver el estado del agente y los trabajos relacionados con el trabajo. Para verlo, seleccione Agente en el Monitor de replicación caja de diálogo. Ver la siguiente imagen:

Bajo el Agente pestaña, puede ver los siguientes detalles:

  1. Estado del trabajo de publicación.
  2. Nombre del trabajo de publicación.
  3. Última fecha y hora de inicio del trabajo de publicación.
  4. Duración para completar el tiempo de trabajo de publicación.
  5. La última acción fue realizada por el trabajo de publicación.

Resumen

En este artículo, había explicado:

  1. El nivel alto es un resumen de la replicación de instantáneas.
  2. Cómo configurar editor y suscriptor.
  3. Monitor de replicación y su uso.

Herramientas útiles:

Comparación de datos de dbForge para SQL Server:una poderosa herramienta de comparación de SQL capaz de trabajar con grandes datos.

dbForge Schema Compare para SQL Server:herramienta confiable que ahorra tiempo y esfuerzo al comparar y sincronizar bases de datos en SQL Server.