2019独角兽企业重金招聘Python工程师标准>>>
1、max_connections 最大连接数
//我喜欢直接select 系统变量需要 @@
select @@max_connections
//设置
set global max_connections = 400
2、查看索引缓存大小
//单位格式化一下
select @@key_buffer_size / 1024 / 1024
set global key_buffer_size = 256 * 1024 *1024
3、查看索引使用统计
show status like "key_read%";
+-------------------+----------+
| Variable_name | Value |
+-------------------+----------+
| Key_read_requests | 34409470 |
| Key_reads | 107 |
+-------------------+----------+
Key_read_requests 是读取索引的次数 Key_reads 是读取硬盘的次数
4、限制server接受的数据包大小 太小的话可能会让你无法导入sql文件
select @@max_allowed_packet / 1024 /1024
set global max_allowed_packet = 25 * 1024 * 1024;
5、查询缓存
mysql 的 query_cache_type 有 三种模式 OFF ON DEMADN
OFF 关闭
ON 默认开启 但我可以使用 sql_no_cache 不缓存或不使用缓存查询
DEMADN 默认关闭 但我可以使用 sql_cache 缓存或使用缓存
//超过 limit 的查询将不被缓存
select @@query_cache_limit / 1024 / 1024;
+-----------------------------------+
| @@query_cache_limit / 1024 / 1024 |
+-----------------------------------+
| 1.00000000 |
+-----------------------------------+//缓冲区的大小
select @@query_cache_size / 1024 / 1024;
+----------------------------------+
| @@query_cache_size / 1024 / 1024 |
+----------------------------------+
| 256.00000000 |
+----------------------------------+//缓存的模式 注意 query_cache_type 是 session 级的变量
select @@query_cache_type;
+--------------------+
| @@query_cache_type |
+--------------------+
| ON |
+--------------------+//不使用缓存
set query_cache_type = OFF;//默认值
set query_cache_type = ON;
//使用 sql_no_cache 强制不使用同时也不缓存 默认是缓存结果和读缓存的
select sql_no_cache * from tabName;set query_cache_type = DENAND;
//使用 sql_cache 来缓存或使用之前的缓存 默认是不缓存结果和不读缓存的
select sql_cache * from tabName;