sbh7600 Asked: 2020-04-20 02:22:52 +0800 CST2020-04-20 02:22:52 +0800 CST 2020-04-20 02:22:52 +0800 CST mysqldump 生成 0bytes 文件 772 我在 crontab 中有一个 mysqldump 行,但它不起作用,它只生成 0 个字节的文件: 0 0 * * * mysqldump -u 'USERNAME' -p'PASSWORD' database| gzip -c > /mysqldumb/backupfile.`date +\%a`.sql.gz >/dev/null 2>&1 linux mysql 1 个回答 Voted Best Answer Kamil Maciorowski 2020-04-20T02:33:09+08:002020-04-20T02:33:09+08:00 这些重定向: > /mysqldumb/backupfile.`date +\%a`.sql.gz >/dev/null 从左到右执行并>/dev/null获胜。该工具写入/dev/null. 您之后的文件最终为空,因为这是>whatever工作原理:它创建whatever文件(如果尚未创建)并截断为零大小。稍后会写入(或不写入)文件。在您的情况下,没有任何内容写入backupfile.*. 如果要写入指定的文件,>/dev/null请从命令行中删除。 标题是 mysqldump制作 0 字节文件 这不是mysqldump创建空文件;gzip也不这样做。 Cron 运行一个 shell,shell 在执行之前 设置管道和mysqldump重定向gzip。shell 在这个阶段创建并截断文件。 要查看它是如何工作的,请调用 nonexistent-command > new-file 你会得到nonexistent-command: not found或等效的错误,仍然new-file会被创建。
这些重定向:
从左到右执行并
>/dev/null
获胜。该工具写入/dev/null
.您之后的文件最终为空,因为这是
>whatever
工作原理:它创建whatever
文件(如果尚未创建)并截断为零大小。稍后会写入(或不写入)文件。在您的情况下,没有任何内容写入backupfile.*
.如果要写入指定的文件,
>/dev/null
请从命令行中删除。标题是
这不是
mysqldump
创建空文件;gzip
也不这样做。Cron 运行一个 shell,shell 在执行之前 设置管道和
mysqldump
重定向gzip
。shell 在这个阶段创建并截断文件。要查看它是如何工作的,请调用
你会得到
nonexistent-command: not found
或等效的错误,仍然new-file
会被创建。