Ich möchte meine MySQL-Datenbank dumpen und tägliche Backups mit rsync
machen.Wie rsync SRC von STDIN lesen?
Erste Annäherung, die ich kam, ist etwas wie mysqldump -ufoo -pbar baz > /var/tmp/baz.sql && rsync /var/tmp/baz.sql /backup/ && rm /var/tmp/baz.sql
.
Dann begann ich mich zu fragen, ob es möglich ist, nicht die temporäre Datei /var/tmp/baz.sql
zu verwenden, sondern stattdessen die Ausgabe von mysqldump
direkt an rsync
zu leiten.
Um genauer zu sein, was ich will, zu einer Befehlszeile ganz ähnlich ist, die wir den GPG-Schlüssel für apt in Ubuntu verwenden zu aktualisieren: gpg --export --armor CE49EC21 | sudo apt-key add -
, wo der Empfänger des Rohres dies es werde '-
Argument angibt, unterstützt lesen Sie von stdin
. Ich nehme an, rsync
hat kein ähnliches Argument. Aber ich möchte wissen, ob es einen Workaround gibt.
Wenn '/ backup /' ein lokaler Pfad ist, warum schreiben Sie nicht direkt auf '/ backup/baz.sql'? – tripleee
Sie sollten dies mit librsync (http://librsync.sourcefrog.net/doc/librsync.html#io-callbacks) implementieren. – ArtemGr