Mysql 尝试每天备份SQL数据库
我正在尝试运行一个cron作业来每天备份我的SQL数据库。这是我正在使用的代码Mysql 尝试每天备份SQL数据库,mysql,sql,bash,cron,crontab,Mysql,Sql,Bash,Cron,Crontab,我正在尝试运行一个cron作业来每天备份我的SQL数据库。这是我正在使用的代码 /usr/local/mysql/bin/mysqldump -uroot -ppassword --opt database > /path/to/directory/filename.sql 但是,它返回给我以下错误: /bin/bash:-c:第0行:在查找匹配的“”时出现意外的EOF /bin/bash:-c:第1行:语法错误:文件意外结束 想知道解决方案是什么……如果需要将cron与复杂的s
/usr/local/mysql/bin/mysqldump -uroot -ppassword --opt database > /path/to/directory/filename.sql
但是,它返回给我以下错误:/bin/bash:-c:第0行:在查找匹配的“”时出现意外的EOF
/bin/bash:-c:第1行:语法错误:文件意外结束
想知道解决方案是什么……如果需要将cron与复杂的shell命令(如特殊字符)一起使用,则应将它们放入外部脚本中,并仅在crontab中调用该脚本。 这样,您还可以手动运行它进行测试 例如:
- 例如,将命令放在/usr/local/sbin/my\u backup\u script.sh中
- 别忘了添加
#/sh文件顶部的bin/sh
- Do
chmoda+x/usr/local/sbin/my\u backup\u script.sh
- 测试手动运行脚本是否正在执行此任务
- 然后将
添加到crontab04***root/usr/local/sbin/my_backup_script.sh
- (或
如果您使用的是个人crontab)04***/usr/local/sbin/my_backup_script.sh
(您可以使用表单“mm hh”将
04
替换为您希望它运行的时间)刚刚尝试过这样做,但我对bash脚本完全不熟悉。我当前的bash脚本如下所示:#/bin/bash/usr/bin/mysqldump-uUSERNAME-pPASSWORD--opt DATABASE_NAME>/path/to/backup.sql
手动运行代码甚至没有创建backup.sql文件。这里有点迷糊了:'(您需要在“#!/bin/bash”之后添加一行回车符。