Mysql 尝试每天备份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

我正在尝试运行一个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与复杂的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
  • 测试手动运行脚本是否正在执行此任务
  • 然后将
    04***root/usr/local/sbin/my_backup_script.sh
    添加到crontab
  • (或
    04***/usr/local/sbin/my_backup_script.sh
    如果您使用的是个人crontab)

(您可以使用表单“mm hh”将
04
替换为您希望它运行的时间)

刚刚尝试过这样做,但我对bash脚本完全不熟悉。我当前的bash脚本如下所示:
#/bin/bash/usr/bin/mysqldump-uUSERNAME-pPASSWORD--opt DATABASE_NAME>/path/to/backup.sql
手动运行代码甚至没有创建backup.sql文件。这里有点迷糊了:'(您需要在“#!/bin/bash”之后添加一行回车符。