MySQL学习笔记(二)

启动选项和配置文件

MySQL是怎样运行的

其实在学习笔记1中已经有了一些MySQL的配置选项比如 mysqld,mysqld_safe,所以这一节感觉应该就是简单启动选项的介绍

在命令行上使用选项

启动服务器程序的命令行后面指定启动选项的通用格式:
--启动选项1[=值1] --启动选项2[=值2] ... --启动选项n[=值n]
各个启动选项之间使用空白字符隔开,每个启动选项名称前面加–,选项名,=,选项值之间不可以有空格。举例如下:

  1. 服务端禁止客户端使用TCP/IP进行通信
    mysqld --skip-networking

  2. 改变表的默认存储引擎
    mysqld --default-storage-engine=存储引擎

配置文件中使用选项

配置文件中的启动选项被划分为若干个组,每个组有一个组名,每个组下面可以定义若干个启动选项,配置文件中只能使用长形式的选项就是不能写缩写,也不用加–前缀,选项之间用回车分隔,并且=周五可以有空白字符。
可以用#添加注释
需要注意的一点是,mysqld_safemysql.server这两个程序在启动时都会读取[mysqld]选项组中的内容。

[server]
#服务器
(具体的启动选项...)

[mysqld]
(具体的启动选项...)

[mysqld_safe]
(具体的启动选项...)

[client]
#客户端
(具体的启动选项...)

[mysql]
(具体的启动选项...)

[mysqladmin]
(具体的启动选项...)

特定MYSQL版本的专用选项组

选项组的名称后加上特定的MySQL版本号,比如对于[mysqld]选项组来说,可以定义一个[mysqld-5.7]的选项组,它的含义和[mysqld]一样,只不过只有版本号为5.7的mysqld程序才能使用这个选项组中的选项。

配置文件的优先级

MySQL会在某些固定的路径下搜索配置文件,如果多个配置文件中有相同的启动项,那么以最后一个配置文件为准。
同一个配置文件中在不同组中出现的相同配置项,以最后出现的为准
如果一个启动项不仅在命令行中出现了,又在配置文件中出现了,那么以命令行的为准。

系统变量

系统变量是有作用域的

  • GLOBAL:全局变量,影响服务器的整体操作。
  • SESSION:会话变量,影响某个客户端连接的操作。(注:SESSION有个别名叫LOCAL)
    但不是所有的系统变量都有作用范围的,有的系统变量只能只读比如version

系统变量比如
max_connections:允许同时连入的客户端数量
default_storage_engine:默认存储引擎
query_cache_size:查询缓存大小
可以用下列命令来查看MySQL服务器支持的系统变量和当前值–这里是session作用范围的系统变量
SHOW VARIABLES [LIKE 匹配的模式];

设置系统变量

启动时,可以通过命令行或者配置文件
mysqld --default-storage-engine=MyISAM --max-connections=10
或者
[server] default-storage-engine=MyISAM max-connections=10
运行中设置无需重启

运行过程中设置系统变量
SET [GLOBAL|SESSION] 系统变量名 = 值;
举例 如果只想对本客户端生效,以下三条语句都可以

语句一:SET SESSION default_storage_engine = MyISAM;
语句二:SET @@SESSION.default_storage_engine = MyISAM;
语句三:SET default_storage_engine = MyISAM;

状态变量

比如Threads_connected表示当前有多少客户端与服务端建立了连接
Handler_update表示已经更新了多少行
可以查询
SHOW [GLOBAL|SESSION] STATUS [LIKE 匹配的模式];

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值