Cron mysqldump,无法读取“/etc/my.cnf.d”的目录(错误代码:2)
Posted
技术标签:
【中文标题】Cron mysqldump,无法读取“/etc/my.cnf.d”的目录(错误代码:2)【英文标题】:Cron mysqldump, Can't read dir of '/etc/my.cnf.d' (Errcode: 2) 【发布时间】:2015-10-16 08:37:45 【问题描述】:我正在尝试使用 cpanel 中的 cron 作业设置自动数据库备份,该作业将通过电子邮件发送给我自己,但遇到了一些问题。目前我尝试了 2 种不同的解决方案,但遇到了类似的错误。
首先我尝试了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。
那么有什么想法可以让其中一个工作甚至更好的解决方案吗?
【问题讨论】:
签出***.com/a/20453251/1816093 【参考方案1】:uuencode
只是将二进制数据(您通过gzip
压缩得到)转换为适合作为 7 位安全“文本”数据的文本数据。你可以试试base64
。
您也可以尝试使用更好的压缩。因此,不要尝试gzip
,而是尝试bzip2
,或者更好的xz
,无论是否可用。
对于mysqldump
,请查看文档:
您可以使用选项--no-defaults
不尝试读取任何选项文件。您还可以创建自己的选项文件(可能基于您已经在其他地方使用的某些配置)并使用--defaults-file
传递它。
【讨论】:
以上是关于Cron mysqldump,无法读取“/etc/my.cnf.d”的目录(错误代码:2)的主要内容,如果未能解决你的问题,请参考以下文章