查看当前mysql使⽤的配置⽂件是哪个
myf是mysql启动时加载的配置⽂件,⼀般会放在mysql的安装⽬录中,⽤户也可以放在其他⽬录加载。
安装mysql后,系统中会有多个myf⽂件,有些是⽤于测试的。
使⽤locate myf命令可以列出所有的myf⽂件
注意:执⾏locate之前先执⾏updatedb,更新系统库。默认系统时凌晨更新库,如果你上午8点添加配置⽂件,执⾏locate可能就显⽰出来命令
locate myf
输出
/usr/local/Cellar/mysql/5.6.24/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/include/default_myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/federated/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_big/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_binlog/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_rpl/myf
查看mysql索引
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_team/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl/extension/bhs/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl/myf
/usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl_ndb/myf
当我们需要修改配置⽂件时,需要到mysql启动时是加载了哪个myf⽂件。
1、查看是否使⽤了指定⽬录的myf
启动mysql后,我们查看mysql的进程,看看是否有设置使⽤指定⽬录的myf⽂件,如果有则表⽰mysql启动时是加载了这个配置⽂件。命令
ps aux|grep mysql|grep 'myf'
[root@linux-node1 ~]# ps aux |grep mysql
root      2684  0.0  0.0 106100  736 ?        S    Mar30  0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql
--socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql      2831  0.2  2.2 2232232 45212 ?      Sl  Mar30  33:28 /usr/libexec/mysqld --basedir=/usr
--datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/
--pid-file=/var/run/mysqld/mysqd.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root      95228  0.0  0.0 103256  944 pts/0    S+  13:00  0:00 grep --colour=auto mysql
[root@linux-node1 ~]# ps aux |grep mysql | grep 'myf'
[root@linux-node1 ~]#
如果上⾯的命令没有输出,表⽰没有设置使⽤指定⽬录的myf。
2、查看mysql默认读取myf的⽬录
如果没有设置使⽤指定⽬录的myf,mysql启动时会读取安装⽬录根⽬录及默认⽬录下的myf⽂件。
查看mysql启动时读取配置⽂件的默认⽬录
命令
mysql --help|grep 'myf'
[root@linux-node1 ~]# mysql --help | grep 'myf'
order of preference, myf, $MYSQL_TCP_PORT,
/etc/mysql/myf /etc/myf ~/.myf
[root@linux-node1 ~]#
这些就是mysql默认会搜寻myf的⽬录,顺序排前的优先。
3、启动时没有使⽤配置⽂件
如果没有设置使⽤指定⽬录myf⽂件及默认读取⽬录没有myf⽂件,表⽰mysql启动时并没有加载配置⽂件,⽽是使⽤默认配置。
需要修改配置,可以在mysql默认读取的⽬录中,创建⼀个myf⽂件(例如:/etc/myf),把需要修改的配置内容写⼊,
重启mysql后即可⽣效。