首页 > 数据库技术 > 详细

mysql配置文件生效顺序

时间:2020-04-14 21:22:42      阅读:62      评论:0      收藏:0      [点我收藏+]

安装完数据库 除了将my.cnf放在/etc/下放在其他地方也是可以的

1
cp /usr/share/mysql/my-default.cnf /etc/my.cnf

今天就看一下这些my.cnf是怎么生效的

看一下生效的my.cnf有哪些

1
2
3
[root@Check2 ~]# mysql --help | grep -E ‘*.cnf‘
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

可以看到路径为

1
2
3
4
/etc/my.cnf
/etc/mysql/my.cnf
/usr/etc/my.cnf
~/.my.cnf

在上面路径中都cp一份my.cnf

其中在[mysqld]下添加port不同

1
2
3
4
/etc/my.cnf    #port = 3307
/etc/mysql/my.cnf    #port = 3308
/usr/etc/my.cnf    #port = 3309
~/.my.cnf    #port = 3310

配置好如下:

1
2
3
4
5
6
7
8
[root@Check2 ~]# cat /etc/my.cnf | grep ‘^port‘
port = 3307
[root@Check2 ~]# cat /etc/mysql/my.cnf | grep ‘^port‘
port = 3308
[root@Check2 ~]# cat /usr/etc/my.cnf | grep ‘^port‘
port = 3309
[root@Check2 ~]# cat ~/.my.cnf | grep ‘^port‘
port = 3310

重启数据库看那个my.cnf生效

1
2
3
4
5
[root@Check2 ~]# /etc/init.d/mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[root@Check2 ~]# netstat -anpt | grep mysqld
tcp        0      0 0.0.0.0:3310                0.0.0.0:*                   LISTEN      2696/mysqld

可以看到先生效的是~/.my.cnf

将这个文件删除,在看下其他的

1
2
3
4
5
6
7
[root@Check2 ~]# cd ~
[root@Check2 ~]# rm -rf .my.cnf
[root@Check2 ~]# /etc/init.d/mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[root@Check2 ~]# netstat -anpt | grep mysqld
tcp 0 0 0.0.0.0:3309 0.0.0.0:* LISTEN 2977/mysqld

继续

1
2
3
4
5
6
[root@Check2 ~]# rm -rf /usr/etc/my.cnf
[root@Check2 ~]# /etc/init.d/mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[root@Check2 ~]# netstat -anpt | grep mysqld
tcp 0 0 0.0.0.0:3308 0.0.0.0:* LISTEN 3221/mysqld

现在可以看出生效顺序是反着的

1
2
3
4
1、~/.my.cnf
2、/usr/etc/my.cnf
3、/etc/mysql/my.cnf
4、/etc/my.cnf

mysql配置文件生效顺序

原文:https://www.cnblogs.com/songtianning/p/12700876.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!