配置文件读取顺序是从上到下,对于 mysqld 来讲–user 参数被用做安全预防措施,出于安全考虑,第一个读取的生效,来防止命令行参数覆盖了特定文件中的用户配置。
目录
一、Windows 环境下配置文件读取顺序
文件名 | 目标 |
---|---|
%WINDIR%\my.ini, %WINDIR%\my.cnf | 全局配置 |
C:my.ini, C:my.cnf | 全局配置 |
BASEDIR\my.ini, BASEDIR\my.cnf | 全局配置 |
--defaults-file | 使用关键字 --defaults-file 指定的文件 |
- %WINDIR%表示 Windows 目录的位置。默认一般是 C:\WINDOWS。使用以下命令获取 WINDIR 环境变量的值来确定位置:C:> echo %WINDIR%
- BASEDIR 表示 MySQL 基本安装目录。当使用 MySQL Installer 安装 MySQL 8.0 时,默认是 C:\PROGRAMDIR\MySQL\MySQL 8.0 Server,其中 PROGRAMDIR 代表程序目录(通常是 Windows 上的 Program Files)
二、Linux 环境下配置文件读取顺序
File Name | Purpose |
---|---|
/etc/my.cnf | 全局配置 |
/etc/mysql/my.cnf | 全局配置 |
--defaults-file | 使用关键字 –defaults-extra-file--defaults-file 指定的文件 |
~/.my.cnf | 用户特定的配置 |
注意配置文件权限如果是 world-writable 全局可写,mysql 为了安全考虑会忽略掉这个配置文件。
- ~表示当前用户的主目录($HOME 的值)。