Cron mysqldump,无法读取'/etc/my.cnf.d'的目录(错误代码:2)

时间:2015-07-25 21:41:14

标签: mysql cron cpanel mysqldump

我正在尝试使用cpanel中的cron作业设置自动数据库备份,这些作业将通过电子邮件发送给我自己,但遇到了一些问题。目前我尝试了两种不同的解决方案,但遇到了类似的错误。

首先我尝试了这个http://www.theblog.ca/mysql-email-backup,即创建一个由cron作业运行的PHP脚本。但我收到错误mysqldump: Can't read dir of '/etc/my.cnf.d' (Errcode: 2)

然后我尝试了这个 http://www.canbike.org/information-technology/hostgator-wolfcms-automatic-mysql-backup.html只是运行这个cron作业

mysqldump -e --user='<USERNAME>' --password='<PASSWORD>' <DATABASENAME> | gzip | uuencode <FILENAME>.gz | mail <EMAIL>

然而我得到/usr/local/cpanel/bin/jailshell: uuencode: command not found mysqldump: Can't read dir of '/etc/my.cnf.d' (Errcode: 2)

我在共享主机上,并没有自己设置MySQL。

所以任何想法如何让其中一个工作或甚至更好的解决方案?

1 个答案:

答案 0 :(得分:2)

uuencode只是将二进制数据(由gzip压缩得到的)转换为适合作为7位安全“文本”数据的文本数据。您可以尝试使用base64

您也可以尝试使用更好的压缩。因此,不管是gzip,还是bzip2或更好xz,无论可用的是什么。

对于mysqldump,请查看文档:

您可以使用选项--no-defaults不尝试读取任何选项文件。您也可以创建自己的选项文件(可能基于您已在其他地方使用的某些配置)并使用--defaults-file传递它。