mysql性能设置的常用参数

原创
2016/05/12 15:33
阅读数 145

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;

 

展开阅读全文
打赏
2
7 收藏
分享
加载中
更多评论
打赏
0 评论
7 收藏
2
分享
返回顶部
顶部