Veröffentlicht 20. Mai 20214 j Hey! Ich würde gerne alle Datenbanken außer Datenbank x auf Server a in eine Datei speichern. Dafür habe ich bislang das hier geschrieben: (Passwort ist nur auf einem testserver so der aus dem internet nicht erreichbar ist ^^ ) - name: get all db command: mysql -u root -p=root -Bse 'show databases' register: database_all - name: set db set_fact: db_all="{{ database_all.stdout_lines }}" - name: get all dbs that should be backuped set_fact: database_different="{{ db_all | difference("database_test") || list }}" - name: dump db shell: "/usr/bin/mysqldump -Q --single-transaction -u root -h localhost -p=root database_different | /bin/gzip -9 > /root/mysql_backups/file.gz" - name: debug db #war nur ein test um zu schauen ob alles richtig ist debug: msg: "{{ db_all }}" Bei der dritten Task kommt nun folgende Fehlermeldung: "template error while templating string: expected token 'name', got '|'. String: {{ db_all | difference(\"database_test\") || list }}" Soweit ich das verstehe, scheint db_all keine Liste zu sein? Und irgendwie befürchte ich auch, dass ich bei difference nicht einfach einen String mit dem Namen von Datenbank x angeben kann, richtig? Wie löse ich das dann? Desweiteren ist mir gerade aufgefallen, dass ich die Variable database_different gar nicht so in den shell Befehl packen kann, sondern den Befehl dann erst zwischenspeichern muss damit das geht.... oder? Sind viele Fragen, ich weiß... Tut mir leid ^^ Trotzdem hoffe ich auf ein bisschen Hilfe. Sitze da nun schon Stunden dran und komme nicht vorran. Danke euch!
20. Mai 20214 j vor 8 Stunden schrieb de.von666: Wie löse ich das dann? mit mysqlpump und --exclude-databases https://mysqlserverteam.com/introducing-mysqlpump/ Bearbeitet 20. Mai 20214 j von _n4p_
21. Mai 20214 j vor 7 Stunden schrieb _n4p_: mit mysqlpump und --exclude-databases https://mysqlserverteam.com/introducing-mysqlpump/ Das wäre prinzipiell perfekt. Allerdings scheint man den noch extra zu installieren müssen und fällt daher leider raus
21. Mai 20214 j Oh man.... Habe meinen Fehler gefunden, klappt jetzt alles wie gewünscht: Ein Pipe war zu viel :facepalm: Danke an @_n4p_ für die Hilfe Thread ist nun quasi fertig
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.