resolucion de conflictos bases datos 2

13
Resolución de Conflictos de Replicación

Upload: barto

Post on 14-Jun-2015

1.053 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Resolucion de conflictos bases datos 2

Resolución de Conflictos de Replicación

Page 2: Resolucion de conflictos bases datos 2

Replicación

• Requiere que cualquier característica usada sea soportada tanto por el maestro como por los servidores esclavos– La función TIMESTAMPADD() se implementó en

MySQL 5.0.0. Si usa esta función en el maestro, no puede replicar a un servidor esclavo que sea más antiguo que MySQL 5.0.0.

Page 3: Resolucion de conflictos bases datos 2

• Si un comando en el esclavo produce un error, el flujo esclavo SQL termina, y el esclavo escribe un mensaje en su log de errores.

• Luego debe conectar al esclavo manualmente, arreglar el problema (por ejemplo, una tabla no existente), y luego ejecutar START SLAVE.

Page 4: Resolucion de conflictos bases datos 2

• Es correcto parar un maestro y reiniciarlo posteriormente. – Si un esclavo pierde su conexión con el maestro, el esclavo trata

de reconectar inmediatamente. Si falla, el esclavo reintenta periódicamente. (Por defecto reinicia cada 60 segundos. Esto puede cambiarse con la opción --master-connect-retry .)

• El esclavo también es capaz de tratar con problemas de conectividad de red. Sin embargo, el esclavo se da cuenta del problema de red sólo tras no recibir datos del maestro durante slave_net_timeout segundos. Si los problemas son cortos, puede decrementar slave_net_timeout.

Page 5: Resolucion de conflictos bases datos 2

• Parar el esclavo (correctamente) es seguro, ya que toma nota de dónde lo dejó. Las paradas no correctas pueden producir problemas.

• Las paradas no correctas del maestro pueden causar inconsistencias entre los contenidos de tablas y el log binario en el maestro; esto puede evitarse usando tablas InnoDB y la opción --innodb-safe-binlog en el maestro.

Page 6: Resolucion de conflictos bases datos 2

• Debido a la naturaleza no transaccional de las tablas MyISAM, es posible tener un comando que actualice parcialmente una tabla y retorne un código de error.

• Si esto ocurre en el maestro, el flujo esclavo sale y para hasta que el administrador de base de datos decida qué hacer acerca de ello.

Page 7: Resolucion de conflictos bases datos 2

MyISAM vs InnoDB

Page 8: Resolucion de conflictos bases datos 2

InnoDB y MyISAM• Principales motores de almacenamiento de las tablas de bases de datos

MySQL. – InnoDB es más reciente, mientras que MyISAM es más antiguo.– InnoDB es más complejo, mientras que MyISAM es más sencillo.– InnoDB es más estricto en la integridad de los datos que MyISAM.– InnoDB implementa bloqueo a nivel de fila para la inserción y actualización,

mientras que MyISAM implementa bloqueo de tabla.– InnoDB tiene transacciones, mientras que MyISAM no lo hace.– InnoDB tiene claves externas y restricciones de relación, mientras que

MyISAM no lo hace.– InnoDB tiene una mejor recuperación de errores, mientras que MyISAM es

pobre en la recuperación de la integridad de datos durante un fallo del sistema.

– MyISAM tiene un índice de búsqueda de texto completo, mientras que InnoDB no.

Page 9: Resolucion de conflictos bases datos 2

Ventajas de InnoDB

• InnoDB debe utilizarse cuando la integridad de datos es una prioridad, ya que se ocupa de ellos con la ayuda de las restricciones de las relaciones y transacciones.

• Más rápido en las inserciones y actualizaciones de tablas, ya que utiliza el bloqueo de filas.

Page 10: Resolucion de conflictos bases datos 2

Desventajas de InnoDB

• Debido a que InnoDB tiene que hacerse cargo de las diferentes relaciones entre las tablas, el administrador de base de datos y esquema de creadores tienen que tomar más tiempo en el diseño de los modelos de datos que son más complejas que las de MyISAM.

• Consume más recursos del sistema como memoria RAM. Es recomendado por muchos que el motor InnoDB se apague después de la instalación de MySQL si no hay necesidad de él.

• No hay indexación de texto completo.

Page 11: Resolucion de conflictos bases datos 2

Ventajas de MyISAM

• Más fácil de diseñar y crear, por lo tanto mejor para los principiantes. No se preocupa acerca de las relaciones foráneas entre las tablas.

• Más rápido que InnoDB, en general, como resultado de la estructura de costos más sencilla y menos uso de los recursos del servidor.

• Indexación de texto completo.• Especialmente bueno para seleccionar tablas.

Page 12: Resolucion de conflictos bases datos 2

Desventajas de MyISAM

• No verifica integridad de los datos (por ejemplo, restricciones de relación).

• No soporta transacciones que es esencial en las aplicaciones de datos críticos tales como el de la banca.

• Más lento que InnoDB en insert y updates de tablas, ya que toda la tabla está bloqueada para cualquier inserción o actualización.

Page 13: Resolucion de conflictos bases datos 2

• InnoDB es más adecuado para situaciones de datos críticos que requieren frecuentes inserciones y actualizaciones.

• MyISAM, por el contrario, tiene un mejor rendimiento con aplicaciones que no depende de la integridad de los datos y en su mayoría sólo selecciona y visualiza los datos.