宝塔数据库备份为空(备份文件20B)

现象

数据库备份文件为20B,下载下来查看为空
计划任务中数据库备份文件为20B,下载下来查看为空

已解决

因为之前安装过mysql,环境不干净,残留了一些配置文件。
解决方式1(推荐):
查看是否存在~/.my.cnf,删掉即可。
解决方式2:
修改备份py脚本/www/server/panel/plugin/alioss/alioss_main.py
在第282行(版本差异)如下图添加 --defaults-file=/etc/my.cnf:
宝塔数据库备份为空(备份文件20B)

原理如下:

/etc/my.cnf 全局选项
/etc/mysql/my.cnf 全局选项
SYSCONFDIR/my.cnf 全局选项
$MYSQL_HOME/my.cnf 服务器特定选项(仅限服务器)
defaults-extra-file 指定的文件 --defaults-extra-file(如果有的话)
~/.my.cnf 用户特定的选项
~/.mylogin.cnf 用户特定的登录路径选项(仅限客户端)

如果存在用户特定选项,则mysqldump时默认取特定选项,从而导致脚本中免密码dump配置失效。