Aquí está el escenario. 2 servidores web en dos ubicaciones separadas que tienen dos bases de datos mysql con tablas idénticas. También se espera que los datos dentro de las tablas sean idénticos en tiempo real.Cuál es la mejor manera de sincronizar bidireccionalmente datos dinámicos en tiempo real usando mysql
Aquí está el problema. si un usuario en cualquier ubicación introduce simultáneamente un nuevo registro en tablas idénticas, como se ilustra en las dos primeras tablas a continuación, donde el tercer registro en cada tabla ha sido ingresado simultáneamente por las diferentes personas. Los datos en las tablas ya no son idénticos. ¿Cuál es la mejor manera de mantener que los datos permanecen idénticos en tiempo real como se ilustra en la tercera tabla a continuación, independientemente de dónde se realicen las actualizaciones? De esta manera, en las siguientes ilustraciones en lugar de terminar con 3 filas en cada tabla, los nuevos registros se replican bidireccionalmente y se insertan en ambas tablas para crear 2 tablas idénticas de nuevo con 4 columnas esta vez.
Server A in Location A
==============
Table Names
| ID| NAME |
|-----------|
| 1 | Tom |
| 2 | Scott |
|-----------|
| 3 | John |
|-----------|
Server B in Location B
==============
Table Names
| ID| NAME |
|-----------|
| 1 | Tom |
| 2 | Scott |
|-----------|
| 3 | Peter |
|-----------|
Expected Scenario
===========
Table Names
| ID| NAME |
|-----------|
| 1 | Tom |
| 2 | Scott |
| 3 | Peter |
| 4 | John |
|-----------|
Para la redundancia, dos maestros deberían ser suficientes. Para equilibrar la carga, se pueden usar configuraciones individuales de maestro y esclavo en ambas ubicaciones. Pero el uso de un maestro con un esclavo externo, al cual se puede cambiar manualmente en caso de falla, es otra opción. – jishi
También, asegúrese de que los servidores tienen valores diferentes para id_servidor y que réplica-misma-server-id está ajustado a su valor predeterminado de 0. Esto puede ser ya, pero se repetirá y encuentro errores si no. – benlumley
me gusta la idea de hacer que los servidores aumenten automáticamente en 2, luego escribo un complemento personalizado para rastrear inserciones/ediciones y el complemento se encargará del resto. entonces, si el servidor 1 se inserta (1,3,5), el complemento puede elegirlo y exportarlo al servidor 2 usando el mismo ID y viceversa, por lo tanto, no hay conflictos. –