Lösning 1:
Jag tror att du missade importfunktionen för mysql_db
modul. Du kan ladda både schema och data med det med import
som parameter att ange och ge den en fil att ladda i target
Exempel från Ansible docs:
# Copy database dump file to remote host and restore it to database 'my_db'
- copy: src=dump.sql.bz2 dest=/tmp
- mysql_db: name=my_db state=import target=/tmp/dump.sql.bz2
Lösning 2:
Om mysql_db inte ger dig alla alternativ som du behöver och flexibilitet kan du bara använda mysql
program i kombination med shell
.
- name: Import DB
shell: mysql db_name < dump.sql
Ovan laster dump.sql
fil till databasen db_name
. Se mysql
programmanual för fler alternativ:man mysql
Lösning 3:
mysqlimport
verktyg med command
modul:
- name: Import DB
command: mysqlimport [options] db_name textfile1 [textfile2 ...]