我正在尝试用cron设置mysql数据库备份,以便将mysql数据库备份到本地NAS存储中。我想将命令存储在服务器上的.sh文件中,然后使用cron执行它。
到目前为止,我已经从远程服务器获得了将数据库保存到NAS (QNAP)的命令,即:
mysqldump
--add-drop-table
--comments [database_name]
-u [database_username]
-p[database_password] |
gzip -c |
ssh [nas_user]@[nas_ip_address]
"cat > /share/mysqlBackup/backup-`date +%Y-%m-%d_%H-%M-%S`.sql.gz"以上各项运作良好,但我遇到的问题如下:
如何解决上述问题的例子将是非常欢迎的。
我相信可以使用expect()对话框,但是--我不熟悉它,它的文档对我来说有点混乱。
发布于 2013-01-12 17:16:05
我猜ssh连接需要密码,这样您就可以使ssh连接无密码。
在答案中解释了无密码ssh连接:https://serverfault.com/questions/241588/how-to-automate-ssh-login-with-password
在远程服务器上完成此步骤之后,rest非常简单,您可以在.sh文件中编写上面给出的命令。并将其添加到cron以定期进行备份。
https://stackoverflow.com/questions/14295485
复制相似问题