Anuncios

Bienvenidos sean a este post, hoy hablaremos sobre las diferencias de este tipo de replicacion.

Anuncios
Anuncios

En este post mencionamos que todas las acciones que utilizariamos para configurar una replicacion tambien aplicaban para la replicacion de origenes multiples pero que en su momento dijimos que luego hablariamos sobre sus diferencias, bueno ha llegado el momento de mencionarlas, siendo la principal diferencia que cada esclavo asociara cada conexion amo-esclavo a un unico ID, esto permite a los comandos de replicacion y las variables de configuracion para referirse a un amo en particular.

Anuncios

Esto implica que no sera necesario detener o iniciar todos los threads de E/S sino solamente uno de ellos, por lo tanto todas las instrucciones de SQL relacionadas a la replicacion que vimos en este post soportan un parametro el cual especifica la conexion referente, veamos los ejemplos:

  • CHANGE MASTER ‘nombre_conexion’ TO …
  • START SLAVE ‘nombre_conexion1’ ‘nombre_conexion2’
  • STOP SLAVE ‘nombre_conexion1’ ‘nombre_conexion2’
  • RESET SLAVE ‘connection_name’
Anuncios

Pero tambien es posible detener o iniciar todos los threads en caso de ser necesario, para ello debemos usar la opcion ALL, veamos un par de ejemplos:

  • START ALL SLAVES
  • STOP ALL SLAVES
Anuncios

Si no especificamos un nombre o no usamos la opcion ALL se utilizara la conexion predeterminada, si bien inicialmente es una cadena vacia esta puede ser cambiada o visualizada por medio de la variable @@default_master_connection, veamos un ejemplo:

MariaDB [(none)]> SELECT @@default_master_connection;
+-----------------------------+
| @@default_master_connection |
+-----------------------------+
|                             |
+-----------------------------+
1 row in set (0.00 sec)
Anuncios

Las variables tambien pueden ser usadas para el filtrado de conexiones, aunque de manera predeterminada hara referencia a la conexion predeterminada, se puede usar la siguiente sintaxis para especificar un filtro para una cierta conexion:

connection_name.variable_name
Anuncios

Por ejemplo para replicar db via la conexion master1 y las otras bases de datos mediante otras coenxiones se puede usar:

SET GLOBAL master1.replicate_do_db = '';
Anuncios

En resumen, hoy hemos visto a la replicacion de origenes multiples, sus principales diferencias con la replicacion comun, un par de ejemplos de como obtener y filtrar algunos conexiones, 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.

Anuncios
pp258

Donación

Es para mantenimento del sitio, gracias!

$1.50

Anuncio publicitario