Bienvenidos sean a este post, hoy vamos a … espera que?
Aunque parezca increible hay muchas razones por las que debemos retrasar a un esclavo, un ejemplo practico es que retrasemos un esclavo unos 30 minutos para recuperarnos ante errores, dicho asi no suena tan malo, no? supongamos que eliminamos una tabla sin querer, a partir de ese momento tenermos 30 minutos para recuperar la tabla desde el esclavo antes que la ejecucion del borrado sea replicada, tambien podemos tener un esclavo con una demora de un dia, semana o mes, esta nos permitira comparar las mas recientes bases de datos con las versiones viejas para encontrar las recientes modificaciones de estructuras o datos.
Mariadb no soporta nativamente la replicacion demorada, sin embargo el toolkit Percona contiene una herramienta que implementa esta caracteristica del lado del cliente, esta se llama pt-slave-delay.
Para poder invocar la herramienta es necesario hacerlo separadamente por cada esclavo que necesita ser demorado, esta herramienta trabaja conectandose periodicamente al esclavo y verificando cuanto esta demorado el esclavo con respecto al amo, cuando la demora es demasiado baja pt-slave-delay detiene al esclavo por un rato, a su vez es posible causar una demora para un periodo de tiempo determinado o de manera permanente, las siguientes opciones tambien son muy importantes:
- –delay, especifica la cantidad de tiempo de demora deseada
- –interval, determina el intervalo de tiempo entre los chequeos
- –run-time, establecemos durante cuanto tiempo correra la herramienta, sino se especifica este nunca terminara, de manera predeterminada cuando se finaliza la ejecucion reinicia al esclavo
El tiempo que podemos usar se debe pasar con el numero de la cantidad de tiempo seguido de una letra que identificara la unidad de tiempo, siendo:
- s para segundos
- m para minutos
- h para horas
Les paso un ejemplo de invocacion:
pt-slave-delay --delay 3h --interval 10m -u tinchicus -p
En resumen, hoy hemos visto porque es una buena practica demorar a un esclavo en un entorno de replicacion, cuales son la posibilidades de que nos brinda, tambien hemos visto cual es la herramienta que nos permite esto en mariadb, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.


Donación
Es para mantenimento del sitio, gracias!
$1.50
