首页 > 技术文章 > mysql调优

alexhjl 2017-05-24 00:26 原文

show status\G;

 

binlog_cache_size=131072

tmp_table_size=104857600

max_connections=5000

sort_buffer_size=1048576

join_buffer_size=1048576

innodb_sort_buffer_size=2097152

thread_cache_size=64

 

 

 

 

 

---快速关闭mysql

让innodb把脏数据写入磁盘

innodb_max_dirty_pages_pct=0,默认是75


如果碰到group by报错:http://www.cnblogs.com/jim2016/p/6322703.html

SELECT @@sql_mode;
SELECT @@GLOBAL.sql_mode;

 

set @@GLOBAL.sql_mode='';
set sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
 
默认关掉ONLY_FULL_GROUP_BY!
 
这个时候 在用工具select 一下
SELECT @@sql_mode;
SELECT @@GLOBAL.sql_mode;
 
发现已经不存在ONLY_FULL_GROUP_BY ,感觉已经OK。但是如果你重启Mysql服务的话,发现ONLY_FULL_GROUP_BY还是会存在的
 
想要彻底解决这个问题 就得去改my.ini 配置(如果你们mysql 没有这个文件,就把my-default.ini 改成my.ini,我这个版本就是没有my.ini配置问题)
 
在 [mysqld]和[mysql]下添加
SET sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

 

 

推荐阅读