mysql启动流程

配置流程实例展示
阅读本文前的知识准备: mysql程序启动流程.7z
SET MYSQL_HOST="127.0.0.1" SET MYSQL_PWD="123456" mysql --defaults-group-suffix=_test --defaults-extra-file="D:\mysql\config.ini" --login-path=mypath --host=localhost --user=game 这是用来启动mysql客户端的命令, 但 它看起来好像太复杂了.脑壳疼. 别着急,让我们大家帮你分析分析.我看到你 用set命令设置了跟mysql相关的环境变量, 我帮你把它记录下来 我注意到你的命令里包含有影响配置文件读取的选项参数, 我们可以根据它们整理出配置文件读取的顺序表 mysql配置项分析记录 1.全局变量设置的配置项: MYSQL_HOST: mysql连接的主机 MYSQL_PWD: mysql连接使用的密码 mysql配置项分析记录 1.全局变量设置的配置项: MYSQL_HOST: mysql连接的主机 MYSQL_PWD: mysql连接使用的密码 2.影响配置文件读取的选项参数 (1)--defaults-extra-file: 额外指定的配置文件 (2)--defaults-group-suffix: 增加读取的组后缀 (3)--login-path: 指定读取.mylogin.cnf配置组 我仔细地看了下 电脑的目录及文 件,情况是这样的 这样的话,配置文 件读取的顺序该 是这样的: 1.%windir%\my.ini 2.basedir\my.ini 3.D:\mysql\config.ini (--defaults-extra-file指定) 4.%APPDATA%\MySQL\.mylogin.cnf (客户端程序必读) 让我来好好帮你看看各个配 置文件的内容, 整理出所有有 效的配置项吧 首先,让我们来看看: %windir%\my.ini [client] password = 123456 port = 3306 socket = /tmp/mysql.sock [mysql] no-auto-rehash [mysqld] default_authentication_plugin=mysql_native_password port = 3306 basedir=E:/mysql/mysql5.7.26 datadir=E:/mysql/mysql5.7.26/data mysql客户端默认读取 [client]组和[mysql]组, 有效选项整理如下表: 接着看basedir\my.ini: 默认读取[client], 但别忘记 了命令行里的--defaults- group-suffix=_test,因此 [client_test]也被读取 [client] password = 123456 port = 3307 [client_test] user=root !include=D:\\mysql\\my.ini 根据文件覆盖规则,后读取的文件覆盖先读取的,最终结果为: (被覆盖的值用红色并加上删除线表示)

你可能感兴趣的:(mysql启动流程)