首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysqldump在cPanel cron作业中有问题

问mysqldump在cPanel cron作业中有问题
EN

Unix & Linux用户
提问于 2019-06-27 08:13:34
回答 1查看 380关注 0票数 -1

为了创建数据库的自动备份,我在cPanel cron作业中使用了以下命令

代码语言:javascript
复制
mysqldump --opt -Q -u {mysql_user_name} --password='{password}' {database} | gzip > /home/[account_name]/db_backup/db_backup$(date +"%Y.%m.%d.%S.%N").sql.gz

当我试图通过SSH/putty运行这个命令时,它正常工作,但是当使用cPanel cron (Server是CentOS7.6kvm)时,我得到了这个错误。

代码语言:javascript
复制
/bin/bash: -c: line 0: unexpected EOF while looking for matching `''
/bin/bash: -c: line 1: syntax error: unexpected end of file
EN

回答 1

Unix & Linux用户

发布于 2019-06-27 10:15:20

由于您的MySQL密码中有特殊字符,所以如果您想在cron作业中使用裸命令,则需要转义它,因为%对cron有特殊的含义。

我建议使用脚本代替,例如一个简单的:

代码语言:javascript
复制
#!/bin/bash

mysqldump --opt -Q -u'{mysql_user_name}' --password='{password}' {database} | gzip > /home/[account_name]/db_backup/db_backup$(date +"%Y.%m.%d.%S.%N").sql.gz

您可以更进一步,将凭据移到变量中:

代码语言:javascript
复制
#!/bin/bash

MY_USER="{mysql_user_name}"
MY_PWD="{password}"

mysqldump --opt -Q -u"$MY_USER" --password="$MY_PWD" {database} | gzip > /home/[account_name]/db_backup/db_backup$(date +"%Y.%m.%d.%S.%N").sql.gz

这应该对你有用。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/527187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档