《Mysql是怎样运行的》读书笔记二

配置文件

在命令行中设置的启动的选项只对当次启动生效,每次启动时,需要重复把这些写到启动命令行中。
我们把每次需要设置的启动选项写在配置文件中,每次服务器启动时都从这个文件中加载相应的启动选项,我们只需配置一次即可。
在配置文件中,不同的选项组是给不同的程序使用的,若选项组名称与程序名称相同,则组中的选项专门应用于该程序。例如:
[mysqld]组用于mysql服务器;
[mysql]组用于客户端程序;
下面两个比较特殊:
[server]组下面的启动选项作用于所有的服务器程序;
[client]组下面的启动选项将用于所有的客户端程序;

程序对应的类别和能读取的组

程序名 类别 能读取的组
mysqld 启动服务器 [mysqld]、[server]
mysqld_safe 启动服务器 [mysqld]、[server] 、[mysqld_safe]
mysql.server 启动服务器 [mysqld]、[server] 、[mysql.server]
mysql 启动客户端 [mysql]、[client]
mysqladmin 启动客户端 [mysqladmin]、[client]
mysqldump 启动客户端 [mysqldump]、[client]

系统变量

mysql服务器程序运行过程中会用到很多影响程序行为的变量,称为系统变量。
通过下列命令查看当前服务器支持的系统变量以及它的值。

show variables [like 匹配的模式];

设置系统变量有以下两种方式:
1.通过启动选项设置
(1)通过命令行,如:

mysqld --default-storage-engine=MyISAM --max-connections=10

(2) 通过配置文件
在配置文件中填写,如:

[server]
default-storage-engine=MyISAM
max-connections=10

2.服务器程序运行过程中设置
首先介绍以下两种作用范围;
GLOBAL(全局范围):影响服务器的整体操作。
SESSION(会话范围):影响某个客户端连接的操作。
在运行时使用set语句修改,
一种是 SET[GLOBAL|SESSION]系统变量名=值;
一种是 SET[@@(GLOBAL|SESSION).]系统变量名=值;
例如:
想让新连接到服务器的客户端都用MyISAM作为默认的存储引擎;

SET GLOBAL default-storage-engine=MyISAM;

或者

SET @@GLOBAL.default-storage-engine=MyISAM;

猜你喜欢

转载自blog.csdn.net/weixin_43213064/article/details/110752906