Replicar bases de datos de SQL Server 2000

En este procediment se explica cómo replicar una BD de SQL Server des d'un servidor a una altra de forma continua. Usado para el cas de tener un backup online del servidor en cas de caida; i els usuaris puedan treballar contra l'altre servidor sin fer mucho canvi (poso exemple amb un simple canvi de alias en els DNS's).

L'exemple que pongo és que en SERVER02 hay una BD (yo la voy a crear, pero se da por entendido que teneis que tener una, sino la creais y la meteis datos), el que s' ha dit, los usuaris treballen contra SERVER02 i automàticament se farà una rèplica de tota esa BD a una altra hub en SERVER01.

Comencem, el primer és crear una BD en SERVER02 (si es que no la tenemos creada). Per a això, accedem a Inicio > Programes > Microsoft SQL Server > Administrador corporativo. Nos situamos en nuestro servidor, en la carpeta de “Bases de dades” i amb botó dret > “Nueva base de datos…”

Le indicamos el nombre que nos de la gana a la BD.

Y opcionalment podem canviar la hubicació de los archivos de BD. Si colocamos el “Archivo de datos” en different disco que el “Registro de transacciones” el servidor irà más rápido.

Lo mateix de arriba, si interessa se canvia el camí de los archivos.

Una vez creada la BD, ens metemos a “Taules” i creamos les que ens interessa, yo para l'exemple crearé dos tablas, una llamada “Nombres” y otra llamada “Empresas”, amb tres camps cada una i a més li mesuren uns registres per comprovar que efectivament les tables es creen en el servidor de rèplica i les dades es sincronitzen. Para ello desde “Taules” > botó dret > “Nueva tabla…”

El que s'ha dit, le metemos los camps que nos interessen que tenguem esa BD, i per el menys a un que hi ha que fer-hi la clau primària, per a això, seleccionamos el camp que ens interessa i pinchamos a la llave. Després guardamos pinchando en el diskett.

I indicamos un nombre de tabla. Acceptar.

Una vez creadas les taules que ens apeteixen per probar. Anem a publicar el nostre BD per que se replique en principi el servidor que interessa. Per a això, des de la mateixa consola de SQL, “Eines” > “Duplicación” > “Crear i administrar publicacions…”

Seleccionamos la BD que queremos publicar i pinchamos en “Crear publicació…”

Següent

Següent

Val, primer aviso, si no os da millor! això em indica que tengo el servei de “Agent de SQL Server” que se inicie amb privilegios de “System” en vez con el de algún usuario, lo más normal SIEMPRE es haber modificado esto y haberlo puesto que lo arranque por ejemplo el administrador, así que yo lo tengo que hacer ahora. Acceptem.

Y arriba le indico con que cuenta se iniciara el servicio, yo le indico que con el Administrador del dominiodominio.com”, metemos la contraseña y “Acceptar”.

Además le indicamos que el servicio se inicie automaticamente con el sistema, esto es obligatorio, Següent.

Nos indica el path donde se guardaran todas las instantaneas de SQL para que lo demas servidores se conecten a él y obtengan la información de que tiene publicado, por defecto viene una ruta a la que se accede mediante C$ (recurso administrativo), y que sólo pueden acceder los administradores, yo he preferido compartir la carpeta onde se guardan estas y añadirle un $ para que no le vean mis usuarios de la red. Esa carpeta esta por defecto en “C:Archivos de programaMicrosoft SQL ServerMSSQLReplData”.

Seleccionamos la BD que queremos publicar, en mi ejemplo EmpresaSQL y Siguiente

Bé, este paso es importante, es el tipo de publicación que haremos, tenim 3 opcions, en orden explicadas según mi ejemplo:
SERVER02 replica los datos a SERVER01, pero la frecuencia de replicación deja mucho que desear.
Indica que los usuarios trabajan contra la BD que está en SERVER02 modificandola constantemente y éste envia de forma incremental los datos a SERVER01
SERVER02 es el que replica los datos a SERVER01, pero si alguien modifica algo en SERVER01, entonces se actualizarían estos datos en SERVER02.

Seleccionamos que tipos de servidores se nos van a conectar para replicarse la BD.

Y en esta pantalla a la derecha iremos seleccionando todas las tablas que nos interesen que se repliquen, las vamos marcando con un check. Següent.

Le indicamos el nombre de la publicación.

Sí y Siguiente

Esta opcion es por si queremos hacer filtros a la hora de replicar, en vez que nos replique todo el contenido de la tabla, podemos filtrar y decir que se nos repliquen sólo de la tabla “Nombres” todas las personas que se llamen Paco. Marcamos los dos checks.

Comprobar que está todo marcado, Següent,

Idem,

Sí permitiremos que se nos conecten servidores anonimos para la replica, para no andar con temas de permisos, si no se puede marcar la otra opcion.

Seleccionamos cada cuanto se actualizará la publicación, por si se modificase cualquier opción.

Finalitzar,

…esperem….

Tancar.

Ok, ya tenemos la publicación creada, se ve de esa forma, desde el administrador corporativo de SQL > nuestro servidor > Monitor de duplicación > Publicadores > yo > y mi publicación.

Ahora IMPORTANTE, nos olvidamos del servidor que tiene la BD, nos colocamos en el que se le replicará la BD, en mi caso en SERVER01. Cómo véis la BD no existe en mi servidor, la de “EmpresasDB”.

Vamos a Duplicación > Suscipciones > “Nueva suscripción de extracción..para absorver la BD y que se replique.

Següent

Buscamos el servidor que la tiene, cualquiera de las dos opciones es buena.

Si en este campo no viene el servidor que tiene la BD, le tenemos que registrar, pinchando enRegistrar servidor…” y ahí meterle el nombre del servidor, en mi caso SERVER02, le damos a Siguiente,

Metemos el usuario con permisos de sincronizar las BD’s

Seleccionamos a que base de datos local nos la replicará y si no la tenemos creada, la creamos pinchando en “Nova”.

Le indicamos un nombre a la BD, un consejo es asignarle el mismo nombre, pero para que veais en el ejemplo, yo le he puesto BKP después para que no hayan confusiones.

Ahora la seleccionamos y Siguiente.

Sí, y “Següent”,

Por defecto esa opion es correcta.

Cada cuanto tiempo se replican los datos de SERVER02 a SERVER01, lo más lógico esContinuamente

Para variar me indica que mi servicio de “Agent de SQL Server” lo tengo detenido en SERVER01, le marcamos los checks y se inicia. Següent.

El mateix, que antes, le indicamos que SI, que se inicie solo cuando arranque el servidor.

FInalizar.

Esperamos a que nos diga que todo está OK y se empiece a replicar.

Acceptar.

Para comprobar que efectivamente todo se nos está replicando podremos ver que ya se nos han creado las tablas de EmpresasSQL, las mias eran la de Nombres yla de Empresas, y podemos comprobar que los datos se han replicado a este servidor también.

Ok, comprobación hecha y los datos están aqui, ahora se puede probar a meter/modificar/borrar datos de la BD de EmpresasSQL en SERVER02 y comprobar que en EmpresasSQL_BKP de SERVER01 se replican esos datos automáticamente.


Posts recomanats

Autor

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, no dubtis a contactar amb mi, us intentareu ajudar sempre que pugui, compartir és viure ;) . Gaudir dels documents!!!