Manuell synchronisieren

Manuell synchronisieren

am 07.11.2007 14:01:50 von Oliver Benning

Hallo,

ich habe teilweise Tabellen mit mehreren Mio. Datensätzen und die werden
täglich erweitert. Ich brauche lokal zum Entwickeln immer die aktuellen
Daten und so kopiere ich mir die Datenbankdateien komplett und ersetze
sie lediglich. Das dauert leider immer sehr lange.

Ich würde deshalb gerne manuell nur die Änderungen seit dem letzen
Update übertragen. Geht das irgendwie manuell, anhand des Binlog, ohne
die Replikation zu nutzen?

Gruß,
Oliver

Re: Manuell synchronisieren

am 07.11.2007 14:24:31 von Norbert Tretkowski

Am Wed, 07 Nov 2007 14:01:50 +0100 schrieb Oliver Benning:
> Ich würde deshalb gerne manuell nur die Änderungen seit dem letzen
> Update übertragen. Geht das irgendwie manuell, anhand des Binlog, ohne
> die Replikation zu nutzen?

Ja, z.B. mit den Optionen --start-position oder --start-datetime von
mysqlbinlog.

Norbert

Re: Manuell synchronisieren

am 07.11.2007 14:34:41 von Harald Stowasser

Oliver Benning schrieb:

> ich habe teilweise Tabellen mit mehreren Mio. Datensätzen und die werden
> täglich erweitert. Ich brauche lokal zum Entwickeln immer die aktuellen
> Daten und so kopiere ich mir die Datenbankdateien komplett und ersetze
> sie lediglich. Das dauert leider immer sehr lange.
>
> Ich würde deshalb gerne manuell nur die Änderungen seit dem letzen
> Update übertragen. Geht das irgendwie manuell, anhand des Binlog, ohne
> die Replikation zu nutzen?

Nimm einen mysqldump[1] mit where-option und spiele den Dump dann bei
Dir lokal einfach drauf:

mysqldump --where="changed>'2007-11-07 09:24:30'" db_name db_tabel

Bei mir funktioniert z.B.:

mysqldump --where="changed>'2007-11-07 09:24:30'" --compact -n -t -h
host -u user -p devdb devtab > changes.sql

Und dann lokal aufspielen:

mysql < changes.sql

gruß
Harald

[1]http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html

Re: Manuell synchronisieren

am 15.11.2007 10:46:09 von Kris

Oliver Benning wrote:
> Ich würde deshalb gerne manuell nur die Änderungen seit dem letzen
> Update übertragen. Geht das irgendwie manuell, anhand des Binlog, ohne
> die Replikation zu nutzen?

Auch ohne Binlog, mit mysql-table-sync aus MySQL Toolkit (auf sf.net).

Kris

--
Kristian =?iso-8859-15?q?Köhntopp?=