0

我已经在 /etc/crontab 文件中写入了这一行,以便每天晚上 3 点将每日转储从一个数据库转移到另一个数据库,但它并没有给出任何错误消息。

0 3 * * * mysqldump -uroot -ppassword --opt activeDB | mysql -uroot -ppassword -h test.example.com passiveDB

知道这里有什么问题吗?我是否需要为服务器定义例如 ssh 连接?如果这是问题所在,我想它应该给出一些消息,比如不允许连接到给定的服务器,不是吗?

4

1 回答 1

0
  1. 将您的命令写入 shell 脚本,然后从 crontab 调用该脚本。某些版本的 cron 不能很好地读取多部分命令。

  2. 您应该先调试您的命令,然后再将其设置为 cron。

您需要确保它mysqld正在监听公共接口test.example.com(默认情况下不是)。您需要确保您GRANT在远程数据库上设置了正确的权限,您需要授予 'user'@'%' (坏主意)或 'user'@'your-active-server-ip' 权限(更好主意)。

于 2012-10-25T13:55:34.683 回答