PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu rsync



rammadamma
18.03.05, 07:51
Guten Morgen Gemeinde,

ich hoffe ihr schickt mich nicht gleich in die Wüste, wenn ich mit einer eher banalen Frage anfange.
Seit Kurzem beschäftige ich mich mit Linux und bin dabei auf das Tool "rsync" gestoßen.
Ziel ist es unsere lokale SQL Datenbank sowie einige ander Verzeichnisse mit jenen auf dem Webserver täglich abzugleichen. Das Ganze sollte mittels CRON Job täglich ablaufen.
Nun bräuchte ich ein bischen Starthilfe:-)
Gibt es hierzu ein fertiges Script, welches ich nur noch nach meinen Bedürfnissen anpassen muß (Domain, Zugangsdaten,Verzeichnisse, etc.).
Schonmal Danke für die Hinweise.

Schönen Tach noch

Oli

derJan
18.03.05, 08:00
Hallo.

Ich mach das mit den MySQL Datenbanken immer so (Befehl auf dem zu synchronisierenden Rechner):


rsync -e ssh -rvz root@server-der-die-original-datenbank-hat.bla:/var/lib/mysql/ --exclude "*.pid" --exclude "*.sock" /var/lib/mysql


Rsync baut dann gleich einen SSH-Tunnel auf und schließt *.pid und *.sock Dateien aus. Mit den Webserver-Verzeichnissen dürfe das dann ähnlich laufen.

Hoffe das hilft dir.
Jan

marce
18.03.05, 09:11
DB-Files so zu syncen ist nicht wirklich optimal (Konsistenz und so, falls das wichtig ist ;-)

besser wäre, einen SQL-Dump zu fahren und dann den zu syncen und auf dem Zielsystem wieder zu importieren - oder alternativ direkt den SQL-Dump in dei DB reinjagen - das gibt halt massiv Traffic über's Netz (wenn wir jetzt mal nicht von DBs im KB-Bereich ausgehen)

Optimal wäre natürlich, die entsprechenden Funkitonen der DB selbst zu nutzen.

"Normale" Verzeichnisse mit statischen Daten und rsync ist aber eigentlich kein Problem...

rammadamma
18.03.05, 11:58
rsync -e ssh -rvz root@server-der-die-original-datenbank-hat.bla:/var/lib/mysql/ --exclude "*.pid" --exclude "*.sock" /var/lib/mysql


Rsync baut dann gleich einen SSH-Tunnel auf und schließt *.pid und *.sock Dateien aus. Mit den Webserver-Verzeichnissen dürfe das dann ähnlich laufen.

Hoffe das hilft dir.
Jan

Danke für die schnelle Antwort.
So wie ich das interpretiere bezieht sich der Code auf das lokale Laufwerk.
Wie bekomme ich die Daten in meine SQL Datenbank auf dem Webserver?

Danke
Oli

marce
18.03.05, 12:46
So wird direkt das MySQL-VZ übertragen - also auch die DB. Wenn Du dann auf dem 2. Server die DB neu startest hast Du automtisch die Daten drin. Ist aber bei DBs nicht wirklich zu empfehlen (s.o.)

derJan
18.03.05, 13:54
@marce: Da muss ich dir auch zustimmen. Bei unseren Internetservern machen wir das auch mit Mysqldump (da hab ich aber wenig mit zu tun). Im Intranet ist das nicht so schlimm wenn Nachts das gesamte Verzeichnis auf einen Backup server kopiert wird (da macht Nachts fast - fast - keiner mehr was drauf ;)).