[uylug-varios] Sincronizar MySql

Eduardo Trápani etrapani at unesco.org.uy
Thu Nov 17 09:27:18 PST 2011


> quisiera saber si hay algo más práctico, algo similar a rsync. Sé que
> MySQL tiene una opción para hacer algo así, usando master y slave , pero
> el tema es que el hosting es un cpanel y no tengo acceso a modificar
> nada de mysql.

El manual de mysql, en la parte de replication[1] dice:

> Replication enables data from one MySQL database server (the master) to be replicated to one or more MySQL database servers (the slaves). Replication is asynchronous - slaves need not be connected permanently to receive updates from the master. This means that updates can occur over long-distance connections and even over temporary or intermittent connections such as a dial-up service. Depending on the configuration, you can replicate all databases, selected databases, or even selected tables within a database.

O sea, te armás el master, de tu lado, y generás el binary log[2].  El
slave no vas a poder porque no podés tocarlo.

> Los datos que se trabajan localmente los subo a la web, lo hago mediante
> un dump de la db local y luego lo tiro directo a la base online.

Entonces eso mismo lo hacés, convirtiendo el binary log a sql
(mysqlbinlog) de modo de tirar directamente las modificaciones y no todo
al pseudo esclavo.  Sería algo de este tipo (más abajo en [2]):

shell> mysqlbinlog log_file | mysql -h server_name

Solo que probablemente vos lo mandes a un archivo y después lo subas.
Después de sincronizar tenés que "volver a cero" al binary log.

Eduardo.

[1] http://dev.mysql.com/doc/refman/5.0/en/replication.html
[2] http://dev.mysql.com/doc/refman/5.0/en/binary-log.html



More information about the Uylug-varios mailing list