[gelöst] Datenbanken synchronisieren
am 15.06.2009 - 11:56 Uhr in
Hallo in die Runde,
ich habe zwei Drupal_6.x Installationen,
eine lokale Installation_1 - mit einigen Inhalten und dem Modulen von STORM.
Und eine Installation_2 auf dem Webserver, die ich gerade starten konnte.
Jetzt möchte ich natürlich die Datenbank vom lokalen Server ins WEB heben.
Was ist dabei zu beachten ?
z.B.
(1) Kann/soll ich die Datenbank_1 komplett über die Datenbank im WEB drüber schreiben/importieren?
mit phpmyadmin oder MySQLdumper ?
(2) Oder gibt es Pfad- und Adressangaben, die in irgendwelchen Tabellen -local und WEB verschieden- stehen? und dann in der jeweiligen anderen Datenbank/Tabelle falsch wären.
(3) Gibt es hier im DrupalCenter irgendwo eine Übersicht über die jeweiligen Aufgaben/Funktionen für alle 71 Tabellen. Damit ich weiß welche einzelnen Tabellen ich händisch einzeln austauschen kann - und welche besser nicht, weil ggf. für die jeweilige Installation erforderlich ?
Mit der Suche habe ich nichts gefunden - falls ja, bitte die URL angeben. Danke.
(4) Gibt es ein Modul oder ein Php_skript, mit dem ich diese Synronisierung der Datenbanken zw. lokal und WEB halbautomatisch vornehmen kann ? Weil, das kommt ja sicher öfter vor.
Für jeden Hinweis, der zur Ergreifung der Lösung führt
danke ich im Voraus.
Mit den besten Wünschen für exzellente Zeiten
Petar
- Anmelden oder Registrieren um Kommentare zu schreiben

DB-Sync
am 15.06.2009 - 12:05 Uhr
Moin.
Du kannst einfach den Dump der einen Datenbank in die andere Datenbank importieren. Ich mache das immer so, dass ich nicht die komplette DB neu erstelle, sondern einfach alle Tabellen der Ziel-Datenbank lösche und dann den Dump einspiele.
Es kann passieren, dass ein paar Pfade nicht korrekt sind. Zum Beispiel, wenn Du Dateien hochgeladen hast und sich die lokalen Pfade von denen auf dem Server unterscheiden.
Pfadprobleme bei Themes und Modulen lassen sich über das leeren des Caches und den Neuaufbau der Theme-Registry einfach beheben.
Ansonsten würde ich nicht von der lokalen Testumgebung zum Live-Server synchronisieren, sondern anders herum.
Lokal wird nur gegen Testdaten entwickelt und die Dateien dann auf dem Server aktualisiert. Die "richtigen" Daten kannst Du direkt im Live-System eintragen und dann gegebenenfalls einen Dump von dort lokal einspielen.
So hast Du die eventuell auftretenden Problem nur lokal und nicht auf dem Server.
hth,
Stefan
--
sei nett zu Deinem Themer
Transfer in beide Richtungen lernen
am 15.06.2009 - 12:48 Uhr
Moin.
Du kannst einfach den Dump der einen Datenbank in die andere Datenbank importieren. Ich mache das immer so, dass ich nicht die komplette DB neu erstelle, sondern einfach alle Tabellen der Ziel-Datenbank lösche und dann den Dump einspiele.
danke für die schnelle Antwort.
"einspielen" bedeutet importieren z.B. mit phpmyadmin ?
Ansonsten würde ich nicht von der lokalen Testumgebung zum Live-Server synchronisieren, sondern anders herum.
Derzeit will ich ja erstmal meine 60 Testeintragungen hoch haben.
Später ja, dann ist das Livesystem das Wichtigere.
Trotzdem will ich den Informationstransport in beide Richtungen beherrschen.
Lokal wird nur gegen Testdaten entwickelt und die Dateien dann auf dem Server aktualisiert. Die "richtigen" Daten kannst Du direkt im Live-System eintragen und dann gegebenenfalls einen Dump von dort lokal einspielen.
So hast Du die eventuell auftretenden Problem nur lokal und nicht auf dem Server.
Gibt es eigentlich hier eine Übersicht zu den Funktionen und Aufgaben der 71 Tabellen ?
Mit den besten Wünschen für exzellente Zeiten
Petar
DB-Sync
am 15.06.2009 - 12:58 Uhr
"einspielen" bedeutet importieren z.B. mit phpmyadmin ?
Ja.
Gibt es eigentlich hier eine Übersicht zu den Funktionen und Aufgaben der 71 Tabellen ?
http://drupal.org/node/22754
http://drupal.org/node/150212
Wobei man eigentlich auch nicht alle zu kennen braucht (wenn überhaupt), da man höchstens als Entwickler mit der Struktur der Datenbank und Daten selbst zu tun hat.
hth,
Stefan
PS: ich hab Deinen Beitrag mal repariert, so dass die ganzen
quoteTags auch wieder richtig geschlossen werden.--
sei nett zu Deinem Themer
DB-Sync Module
am 15.06.2009 - 13:16 Uhr
Hab gerade noch diese beiden Module gefunden:
http://drupal.org/project/deploy
http://drupal.org/project/dbscripts
hth,
Stefan
--
sei nett zu Deinem Themer
Sieh Dir mal das Video von
am 15.06.2009 - 17:00 Uhr
Sieh Dir mal das Video von SPARTACUS an ... http://drupalbasic.de/einsteigerhandbuch/drupal-umzug
-------------------------------------------------------------------------------
Drupal ist das "Coolste", was mir in 10 Jahren Webworking untergekommen ist!
Mein aktuelles Drupal Projekt: STEELDART Dart Community
Trick 17 = direkt SQL
am 15.06.2009 - 18:12 Uhr
Du kannst einfach den Dump der einen Datenbank in die andere Datenbank importieren. Ich mache das immer so, dass ich nicht die komplette DB neu erstelle, sondern einfach alle Tabellen der Ziel-Datenbank lösche und dann den Dump einspiele.
das habe ich nicht hingekriegt,
nur das Löschen der Tabellen hat geklappt, :-(, nicht aber das aufspielen oder zurückspielen der kompletten Dantenbank in die leere Bank hinein mit phpmyadmin.
Das sah schon ziemlich blöd nach einer Neuinstallation aus. hm.
ABER
dann hatte ich die rettende Idee:
Ich habe die SQL-Datei mit dem Editor Qwined geöffent.
Jetzt hatte ich die Wahl und habe die SQL-Datei vom localen Rechner mit den STORM-Modulen genommen.
Die rd. 1900 Zeilen SQL Befehle und Kommentare in den Zwischenspeicher genommen und auf dem WEB-Server bei Phpmyadmin in das SQL Befehlsfenster eingegeben.
Im Windox-Task-Manager Fenster habe ich dann die Aktivitäten der Maschine beobachtet, ob sich was tut? Tabellen angelegt werden? Ob ich abbrechen sollte?
Aber es tat sich was Firefox und MySQL_exe waren aktiv.
Also gewartet - und die Tabellen sind da.
Zwar sind die Umlaute zerschosssen , aber das kann ich verschmerzen.
Natürlich geht der Spaß weiter mit der doppelten Fehlermeldung bei gleichem Textinhalt:
warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, '_storminvoiceitem_invoiceitems_access' was given in /mnt/web2/52/93/5148593/htdocs/drupal/includes/menu.inc on line 452.
>mnt< hat etwas mit den relativen und absoluten Pfadangaben zu tun ?
WAS sollte , könnte ich WO ändern um diese hässliche Fehlermeldung nun abzustellen ?
Danke Ihr Engel.
@Stefan - danke für die Quote - nachbesserung.
das hat mich irgendwo geärgter , aber ließ sich nicht beheben
Mit den besten Wünschen für exzellente Zeiten
Petar
gelöst für heute alles wunderbar gelöst
am 15.06.2009 - 22:33 Uhr
Du kannst einfach den Dump der einen Datenbank in die andere Datenbank importieren. Ich mache das immer so, dass ich nicht die komplette DB neu erstelle, sondern einfach alle Tabellen der Ziel-Datenbank lösche und dann den Dump einspiele.
das habe ich nicht hingekriegt,
nur das Löschen der Tabellen hat geklappt, :-(, nicht aber das aufspielen oder zurückspielen der kompletten Dantenbank in die leere Bank hinein mit phpmyadmin.
Das sah schon ziemlich blöd nach einer Neuinstallation aus. hm.
ABER
dann hatte ich die rettende Idee:
Ich habe die SQL-Datei mit dem Editor Qwined geöffent.
Jetzt hatte ich die Wahl und habe die SQL-Datei vom localen Rechner mit den STORM-Modulen genommen.
Die rd. 1900 Zeilen SQL Befehle und Kommentare in den Zwischenspeicher genommen und auf dem WEB-Server bei Phpmyadmin in das SQL Befehlsfenster eingegeben.
Im Windox-Task-Manager Fenster habe ich dann die Aktivitäten der Maschine beobachtet, ob sich was tut? Tabellen angelegt werden? Ob ich abbrechen sollte?
Aber es tat sich was Firefox und MySQL_exe waren aktiv.
Also gewartet - und die Tabellen sind da.
Zwar sind die Umlaute zerschosssen , aber das kann ich verschmerzen.
Natürlich geht der Spaß weiter mit der doppelten Fehlermeldung bei gleichem Textinhalt:
warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, '_storminvoiceitem_invoiceitems_access' was given in /mnt/web2/52/93/5148593/htdocs/drupal/includes/menu.inc on line 452.
>mnt< hat etwas mit den relativen und absoluten Pfadangaben zu tun ?
WAS sollte , könnte ich WO ändern um diese hässliche Fehlermeldung nun abzustellen ?
Drupal hat die Fehlermeldung selbst abgestellt. hä?
Indem waren die STORM Module alle weg, aber die Tabellen dazu waren in phpmyAdmin zu sehen.
In der Installation_2 auf dem WEB fehlten die PHP-Storm-Verzeichnisse.
Ich habe diese Teile per FTP in das Verzeichnis /drupal/sites/all/modules/storm
geladen.
Jetzt läuft alles , bis auf den Umlautemüll.
Ich bin glücklich und stolz - freut Euch mit mir. :-)))
Heut mal früh ins Bett gehn.
Mit den besten Wünschen für exzellente Zeiten
Petar