关闭查询缓存
set global query_cache_size=0; |
开启trace
开启trace工具会影响mysql性能,所以只能临时分析sql使用,用 完之后立即关闭
set session optimizer_trace=”enabled=on”,end_markers_in_json=on; |
使用
select * from ${table}; |
EXPLAIN 工具
EXPLAIN SELECT * FROM ${table}
开启慢查询
全局变量设置
这种方式在mysql重启后会失效
查看慢查询参数
show variables like ‘slow_query%’;
查看慢查询判定时间
show variables like ‘long_query_time’;
开启/关闭慢查询
set global slow_query_log=’ON’;
set global slow_query_log=’OFF’;设置慢查询判定时间(超过 1s 就为慢查询 默认 10s)
set global long_query_time=1;
设置慢查询日志存放的位置
set global slow_query_log_file=’/usr/local/mysql/data/slow_query.log’;
如果不生效 重新打开会话即可
配置文件设置
- 修改配置文件my.cnf,在[mysqld]下的下方加入**
[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow_query.log
long_query_time = 1 - 重启mysql
事务隔离级别
传送门: MySQL 事务隔离级别
|
表锁
# 手动加锁语句 |
间隙锁
# 查看 innodb_locks_unsafe_for_binlog 是否禁用 |
innodb_locks_unsafe_for_binlog:默认值为OFF,即启用间隙锁。因为此参数是只读模式,如果想要禁用间隙锁,需要修改 my.cnf(windows是my.ini) 重新启动才行。
# 在 my.cnf 里面的[mysqld]添加 |
赏
使用支付宝打赏
使用微信打赏
若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏
扫描二维码,分享此文章