MySQL Datenbanken abgleichen mit Toad

Wer kennt das nicht, man entwickelt etwas lokal und muss es dann Live stellen, ruft die Seite auf und Peng: nichts geht! Man hat lokal eine geänderte Datenbankstruktur, die man nicht 1:1 online gestellt hat. Ich habe mir angewöhnt in jedem Projekt eine Textdatei liegen zu haben, in der ich bei Änderungen alle ALTER TABLE hintereinander rein kopiere. Bevor ich eine Seite Live stelle gehe ich mit Adminer hin, und führe den SQL-Befehl aus.

Screenshot der Toad for MySQL Homepage

Die Windows-Freeware Toad for MySQL (die dauch für andere Datenbanken verfügbar ist) schafft es als eine der wenigen GUIs, die verfügbar sind, mehrere Datenbankverbindungen parallel zuzulassen. Also auch eine Verbindung zu einer lokalen Datenbank und einer Remote Datenbank. Hat man die Verbindung erst einmal aufgebaut kann man Datenbanken bidirektional abgleichen. Dabei kann man entweder nur das Schema synchronisieren, oder die Daten direkt mit. Das Tool kann mehr oder weniger also auch für Backups verwendet werden.

Das Tool hat zugegebenermaßen nicht viel mit einem halbwegs sinnvollem User Interface zu tun, funktioniert aber technisch einwandfrei und ist kostenlos. Es kann an der Stelle eine Menge Arbeit ersparen nämlich genau dann, wenn die Remote-Datenbank in die lokale Datenbank kopiert werden soll, um Weiterentwicklungen zu programmieren. Man braucht an der Stelle dann keinen kompletten Dump mehr auszutauschen. Die spannende Frage ist aber: wie stellt das Tool eine Verbindung zum Remote-Server her.

Warum ist das spannend? Weil die meisten Hoster keine direkte Verbindung zur MySQL-Datenbank zulassen. Wenn man Glück hat besitzt man einen SSH-Zugang und kann zu MySQL tunneln. Auf dem Mac verwende ich deshalb Navicat das mit einer PHP-Datei daher kommt, die man geschützt in ein Verzeichnis legen kann, und über das man dann trotzdem Remote auf die Datenbank zugreifen kann.

Toad ist an der Stelle (noch nicht) so weit und erlaubt nach meinem Wissensstand nur direkte Verbindungen, besitzt also weder einen Workaround noch verfügt es über einen SSH-Tunnel. Wer aber direkten Zugriff auf den Server besitzt fährt mit Toad recht gut und kommt auch sehr weit, da die Synchronisierung wirklich einfach gelöst ist. Man kann übrigens auch zwei Remote-Server synchronisieren!

Ähnliche Beiträge

MyWebsql – eine weitere Alternative zu phpMyAdmin?... Mein ganz besonderer Liebling ist ja eigentlich Adminer, nur eine Datei, schnell – und macht vor allem alles, was man braucht. phpMyAdmin kann ich nac...
MySQLnd – MySQL Query Cache Die Welt ist komisch, gerade in der Webentwicklung. Dort bewegt man sich zwischen Unwissenheit und Holzhammer-Problematiken. Hinzu kommt, dass bei Opt...
Events in MySQL – das ungeliebte Kind Events in MySQL ist eine Technik, die ähnliche wie Triggers und Stored Procedures kaum Verwendung finden. Das wiederum liegt an der Tatsache (und man ...
MemSQL – der angeblich schnellste SQL-Server MemSQL hyped sich ja jetzt seit Wochen durch die Medien, und das nicht ohne Halbwahrheiten zu begünstigen, oder ominöse Fehler - die durchaus vorhande...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.