我无法让 cron 运行
当我运行这个时:
*/1 * * * * root mysqldump -u root database-name > /var/www/db/database-name.sql
我得到了一个 0 大小的文件。但同样的命令从提示符生成了一个 db 文件
此外,这不会执行任何操作,但在提示时可以正常工作
*/1 * * * * root mysqldump -u root database-name > /var/www/db/database-name.sql && aws s3 cp /var/www/db/database-name.sql s3://project-database/
答案1
谢谢史蒂夫的帮助。
结果是 root 用户的权限问题。我将用户名和密码存储在 ~/.my.cnf 文件中,如下所示
[mysqldump]
user = root
password = "password"
但是我没有在 cron 语句中调用。是这样吗
*/1 * * * * root mysqldump --defaults-extra-file="/root/.my.cnf" -u root dbname > /var/www/db/dbname.sql && aws s3 cp /var/bd-backups/dbname.sql s3://bucketname/
希望这可以节省一些人的时间:)