我当时参考了网上的一篇博文,文章链接是:Linux 使用crontab定时备份Mysql数据库。主要用到了LINUX的crontab(定时任务)命令和MYSQL的mysqldump(数据库逻辑备份)命令。具体内容可以参考链接指向的博文。下边我主要说一下我在做的过程中遇到的一个问题,以及解决的方法。
我按照文章编写完执行脚本文件,且启动定时任务后,发现并没能成功生成备份文件。但是,如下图所示的日志文件,却被成功创建了。
由此推断问题不在定时任务命令crontab上,而应该是出现在所编写的可执行脚本文件(test_database_backup.sh)或配置文件(my.cnf)中。
于是,我单独执行脚本文件,看是否可以成功生成备份文件(进入test_database_backup.sh所在目录,并执行命令:./test_database_backup.sh)。
我看到如下图报错信息:
即 mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES)
在经过一番尝试后,我找到了问题所在。如下图所示位置:password=123456这种写法不正确,应该加上引号,即 password='123456' 。
至此问题解决。