26
2023
04
14:24:14

mysql配置my.cnf中!include和!includedir的作用

先看官网截图:


a799f581ee9350227475df2abfcd2b48_b39be29ea5734ee3ab8503834a30e231.png


------------------------------------------------------------------------------------------


举个例子:


[mysqld]

port=3306

...

...

...


[mysqladmin]

ssl=0

...

...

...

!include /home/mydir/myopt.cnf

!includedir /home/mydir/conf.d/


my.cnf内容如上。


文字说明:

my.cnf中的配置,都分有各个模块,例如:[mysqld] [client] [mysqladmin]等等。

各个模块下的参数指令都各自属于自己的模块,和其他模块相当于隔离。

而my.cnf这个配置文件,会被不同的进程所引用处理,例如:mysqld 、 mysqladmin 等等。

如果mysqld引入了my.cnf这个配置文件,它只会读取[mysqld]模块下的所有参数指令,不会搭理其他模块下的。

但有例外,就是上面两个命令 !include 和 !includedir。

不管他们两个参数指令,放在my.cnf中的哪一个模块下,任何地方,都会被处理。

而新引入的文件中,如果有[mysqld]模块参数指令,就会再添加,没有则什么都不做。


可能新人会觉得,云里雾里,莫名其妙,脱裤子放屁多此一举。

但你要知道,你学习的任何一个小技术点,在超大型项目中是难以想象的复杂!

甚至就这么简单的一个my.cnf也要分模块管理和处理,甚至不同模块,不同的人去配置管理。

所以,这个指令的存在就相当于,防止不同的人把别人的配置文件给忽略了。


另外,这样的话,你可以换一种方式管理配置文件了,把最最基础,最最通用的配置放在第一级文件。

然后其他不同情况,不同场景下的配置文件各自存放。

如果因为业务需求等情况,想换配置,只在第一级文件中,修改一下 !include这个指令指向的路径就可以了。





推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/3994.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: