Soujiro

Fanático
Se incorporó
14 Enero 2008
Mensajes
1.428
A ver recién me estoy metiendo en esto de la replicación de mssql y tengo un par de "problemas" en la pega que no comprendo.

La situación es la siguiente tengo el servidor A que publica la base X, al cual se suscriben los servidores B y C. El primer problema surge cuando por ejemplo el servidor C pierde conectividad con A por un día, en cuyo caso para "resincronizar" el servidor debo generar una nueva "instantánea" y luego reinicializar la sincronización en el servidor C, todo en forma "manual"

El segundo problema es cuando se produce cuando hago un alter en la base y este modifica una primary key de una tabla, me obliga a generar una nueva instantanea y reinicializar manualmente la sincronización de B y C

En MYSQL, la replicación por medio de logs binarios encuentro que es bastante mas "inteligente" de echo tuvimos un servidor down por 2 semanas, al encender la maquina mysql se puso al día con el master sin tener que intervenir en nada, eso si que los logs binarios duran un mes

No creo que el MSSQL sea tan estúpido para trabajar con replicaciones, de echo toy 99% seguro que es alguna opción del mssql server que no tengo idea de donde esta.
 

Gen1us

VCP
Se incorporó
16 Octubre 2012
Mensajes
1.358
A ver recién me estoy metiendo en esto de la replicación de mssql y tengo un par de "problemas" en la pega que no comprendo.

La situación es la siguiente tengo el servidor A que publica la base X, al cual se suscriben los servidores B y C. El primer problema surge cuando por ejemplo el servidor C pierde conectividad con A por un día, en cuyo caso para "resincronizar" el servidor debo generar una nueva "instantánea" y luego reinicializar la sincronización en el servidor C, todo en forma "manual"

El segundo problema es cuando se produce cuando hago un alter en la base y este modifica una primary key de una tabla, me obliga a generar una nueva instantanea y reinicializar manualmente la sincronización de B y C

En MYSQL, la replicación por medio de logs binarios encuentro que es bastante mas "inteligente" de echo tuvimos un servidor down por 2 semanas, al encender la maquina mysql se puso al día con el master sin tener que intervenir en nada, eso si que los logs binarios duran un mes

No creo que el MSSQL sea tan estúpido para trabajar con replicaciones, de echo toy 99% seguro que es alguna opción del mssql server que no tengo idea de donde esta.

Y por qué usas replication, probaste con los 3 tipos?, evaluaste log shipping o db mirror?.
 
Upvote 0

Zuljin

Fundador
Miembro del Equipo
Fundador
ADMIN
Se incorporó
15 Enero 2004
Mensajes
11.872
Sabís que @Soujiro? Creo que estás utilizando un método no adecuado para replicar. Déjame revisar un poco por acá y te recomiendo un método mejor.

A todo esto, ¿qué versión de MSSQL es?
 
Upvote 0

Soujiro

Fanático
Se incorporó
14 Enero 2008
Mensajes
1.428
Como dije estoy recién comenzando en esto, alguien alguna vez lo dejo andando y "configurado" y no lo han tocado desde tiempos inmemoriales. Entonces ahora que tengo algo de tiempo estoy tratando de aprender como "arreglar/optimzar/rehacer" esta cosa para que quede funcionando "decente"
 
Upvote 0

Zuljin

Fundador
Miembro del Equipo
Fundador
ADMIN
Se incorporó
15 Enero 2004
Mensajes
11.872
Como dije estoy recién comenzando en esto, alguien alguna vez lo dejo andando y "configurado" y no lo han tocado desde tiempos inmemoriales. Entonces ahora que tengo algo de tiempo estoy tratando de aprender como "arreglar/optimzar/rehacer" esta cosa para que quede funcionando "decente"

Mirroring es lo que entiendo quieren hacer ustedes

https://msdn.microsoft.com/en-us/library/ms189852(v=sql.110).aspx


Cuando me haga algo de tiempo voy a instalar una demo de eso para ver que onda.
 
Upvote 0

Gen1us

VCP
Se incorporó
16 Octubre 2012
Mensajes
1.358
Como dije estoy recién comenzando en esto, alguien alguna vez lo dejo andando y "configurado" y no lo han tocado desde tiempos inmemoriales. Entonces ahora que tengo algo de tiempo estoy tratando de aprender como "arreglar/optimzar/rehacer" esta cosa para que quede funcionando "decente"
Lo que no queda claro es si necesitas subscribir esos servidores para que lo utilice un departamento de desarrollo o bien estás realizando una especie de "alta disponibilidad".

Saludos

Enviado desde mi OnePlus One mediante Tapatalk
 
Upvote 0

Soujiro

Fanático
Se incorporó
14 Enero 2008
Mensajes
1.428
Por como esta, "creo" que la persona que lo configuro "trato" de realizar un hybrido de ambas cosas. En el tarro B se toman los datos desde la base replicada y se realizan los mismos calculos de A, luego los comparan, ergo el Tarro B seria "alta disponibilidad". Por su parte en el Tarro C se toman los mismos datos de la base replicada, pero los desarrolladores meten mano en el código antes de ejecutar los cálculos, ergo seria "Desarrollo".

En lo personal me importa mas que el "alta disponibilidad" funcione transaparentemente (como el mysql), luego vere que es lo mas apropiado para "desarrollo"

Ahora estoy leyendo el link de Zuljin veamos si comprendo algo..

Por cierto el Servidor es SQL SERVER 2008 Standar (no es el R2)
 
Upvote 0

Zuljin

Fundador
Miembro del Equipo
Fundador
ADMIN
Se incorporó
15 Enero 2004
Mensajes
11.872
Por como esta, "creo" que la persona que lo configuro "trato" de realizar un hybrido de ambas cosas. En el tarro B se toman los datos desde la base replicada y se realizan los mismos calculos de A, luego los comparan, ergo el Tarro B seria "alta disponibilidad". Por su parte en el Tarro C se toman los mismos datos de la base replicada, pero los desarrolladores meten mano en el código antes de ejecutar los cálculos, ergo seria "Desarrollo".

En lo personal me importa mas que el "alta disponibilidad" funcione transaparentemente (como el mysql), luego vere que es lo mas apropiado para "desarrollo"

Ahora estoy leyendo el link de Zuljin veamos si comprendo algo..

Otra opción es AlwaysOn, que entiendo eso sería un activo/activo. Es importante saber la necesidad de negocio que tienen en tu pega.
 
Upvote 0

Gen1us

VCP
Se incorporó
16 Octubre 2012
Mensajes
1.358
Por como esta, "creo" que la persona que lo configuro "trato" de realizar un hybrido de ambas cosas. En el tarro B se toman los datos desde la base replicada y se realizan los mismos calculos de A, luego los comparan, ergo el Tarro B seria "alta disponibilidad". Por su parte en el Tarro C se toman los mismos datos de la base replicada, pero los desarrolladores meten mano en el código antes de ejecutar los cálculos, ergo seria "Desarrollo".

En lo personal me importa mas que el "alta disponibilidad" funcione transaparentemente (como el mysql), luego vere que es lo mas apropiado para "desarrollo"

Ahora estoy leyendo el link de Zuljin veamos si comprendo algo..

Por cierto el Servidor es SQL SERVER 2008 Standar (no es el R2)

Ok, fácil entonces.

Crea un Clúster Activo/Pasivo con el Nodo A y el Nodo B, es relativamente fácil y te podemos ayudar con eso (Necesitas un Dominio en AD, 2 NIC con diferentes segmentos y un Storage).

El Nodo C lo dejas con la publicación para que los desarrolladores webeen ahí.

Always On es la evolución de Database Mirroring, es un Activo/Activo entre comillas ya que tiene un montón de requisitos y finalmente hay software de terceros que hacen mejor la pega con un Activo/Pasivo + Nodo de Contingencia.

Nos cuentas
 
Última modificación por un moderador:
Upvote 0

Soujiro

Fanático
Se incorporó
14 Enero 2008
Mensajes
1.428
Yap, despues de mucha lectura comprendo lo siguiente, nuestra base de datos esta Publicada en modo "replicación Transaccional". En teoría se puede mezclar con database mirror utilizando log shipping con lo cual cual tendría un comportamiento similar al de mi base mysql ¿correcto?
 
Upvote 0

Gen1us

VCP
Se incorporó
16 Octubre 2012
Mensajes
1.358
Yap, despues de mucha lectura comprendo lo siguiente, nuestra base de datos esta Publicada en modo "replicación Transaccional". En teoría se puede mezclar con database mirror utilizando log shipping con lo cual cual tendría un comportamiento similar al de mi base mysql ¿correcto?

Compadre, en resumen Database Mirror permite replicar la base de una instancia a otra instancia, Log Shipping hace lo mismo pero este permite utilizar la base en la instancia de destino en modo Read Only. Ambos necesitan que tengas las bases de datos en modo FULL RECOVERY, es decir, que todas las consultas son almacenadas en el log, es por eso que debes tener cuidado con el espacio disponible y el esquema de respaldo.

Saludos
 
Upvote 0

Soujiro

Fanático
Se incorporó
14 Enero 2008
Mensajes
1.428
Te pasastes, ahora me pondré a jugar en el lab de virtualizacion con ambos modos utilizando un backup del producción y ver con cual quedo mas satisfecho ante caidas prolongadas (Mas de un dia)
 
Upvote 0
Subir