首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysqldump带ansible的数据库备份

问Mysqldump带ansible的数据库备份
EN

Database Administration用户
提问于 2018-07-09 11:59:01
回答 1查看 9.5K关注 0票数 1

我正在尝试使用ansible和mysqldump备份远程数据库。我已经在本地server.Generated中安装了ssh密钥。我还将公钥发送到远程服务器。ansible部件中的所有内容都很好,但是不能使用ansible和mysqldump进行备份。

我试过这个:

代码语言:javascript
复制
ansible -m shell -a 'mysqldump -h 192.168.10.155 -u root -proot database_name  > database_name.sql' remote_server

但是备份是在remote_server的主目录中创建的。我的要求是我想把remote_server的备份放到我的local_server中。

编辑:

现在我用的是剧本:

  • 主机: remote_server变成:是的任务:
    • 名称: do mysqldump ignore_errors: yes shell: mysqldump -h 192.168.10.155 -u root -proot database_name > dbname.sql

  • 主机: remote_server任务:
    • 名称:将文件从远程传输到本地同步: src: /home/user/test.txt主: /home/user/backup delegate_to: local_server

备份正在进行,但如何在运行ansible的服务器中获得备份?

我研究过,这也可以用游戏手册来完成。

我怎样才能用剧本来实现它呢?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2018-07-10 10:33:56

我真的很抱歉把这封信寄出去。我后来意识到,这更像是我正在寻找的一种无意义的解决方案,而不是mysqldump。

我尝试了很多种选择,最后这一种对我来说很管用。

代码语言:javascript
复制
- hosts: remote_server
  tasks:
    - shell: mysqldump -h 192.168.10.155 -u root -proot mobile > mobile123.sql

- hosts: remote_server
  tasks:
    - fetch:
       src: /home/user/mobile123.sql
       dest: /home/user/
       flat: true

这个剧本所做的是,在第一部分使用mysqldump进行数据库备份,并在remote_server中创建备份。

在后面的部分中,它使用fetch命令将备份从remote_server复制到本地服务器(承载ansible的服务器)到本地目录。

一旦它在本地目录中,就可以复制到我们想要的服务器上。

希望这个对其他人也有帮助。

谢谢大家的帮助。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/211663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档