Gem ruby gem backup 使用问题.

lb563 · 2012年07月10日 · 最后由 _samqiu 回复于 2012年07月12日 · 3195 次阅读

backup https://github.com/meskyanichi/backup 是一个很好用的 gem.

当我配置好 backup 所需的内容后,定制了一个定期备份的任务,其中有一任务: 每天晚上 10 点备件远程服务器的 mysql 数据到本机。

但是有一个问题,每天备份的时候会遇到问题:

mysqldump: Got error: 1130: Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server when trying to connect

意思是说:远程服务器不允许 ip:xxx.xxx.xxx.xxx 的主机操作数据库。

我处理的方法是: 用 mysql 客服端登录到远程服务器的 mysql 并修改 ip:xxx.xxx.xxx.xxx 的权限, 然后再执行 backup 的备份。

我这样做只是处理了眼前的问题,已经遇到很多次类似的问题. 我本机的 ip 对内网是固定的 ip,但是外网还好像会动态改变. 所以每次备份的时候访问远程服务器的 ip 会改变 同时相应的权限也就不能访问远程数据库了. 你们有没有什么好的方法来处理这类事件?

是不是可以给数据库配上所有主机允许访问的权限,或者一个 ip 范围允许访问。

可能有点脱题。如果权限问题比较麻烦的话,何不在远程服务器上跑 backup 呢?

如果真不能在远程机器上跑 backup,那建一个最少权限的账号允许所有主机访问

需要 登录 后方可回复, 如果你还没有账号请 注册新账号