Zum Inhalt springen
  • 0

Ansible Datenbanken backup


Frage

Geschrieben

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? :D

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!
 

3 Antworten auf diese Frage

Empfohlene Beiträge

  • 0
Geschrieben

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 Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...