Mysql 常用语句

一,查看mysql缓存设置大小语句

show variables like 'innodb_buffer_pool%';

2,调整innodb_buffer_pool_size 大小语句
set global innodb_buffer_pool_size = 2147483648;

3,调整innodb_buffer_pool_chunk_size大小语句
set global innodb_buffer_pool_chunk_size= 134217728;

//查询错误日志
show variables like 'log_error'

//根据时长查询事务
select * from information_schema.innodb_trx where TIME_TO_SEC(timediff(now(),trx_started))>0.01
查看当前有那些表是打开的
show open tables;
In_use:有多少线程正在使用某张表
show OPEN TABLES where In_use > 0;
查询 正在执行的事务:

超过60秒的事务
select * from information_schema.innodb_trx where TIME_TO_SEC(timediff(now(),trx_started))>60

SELECT * FROM information_schema.INNODB_TRX
如果trx_state为LOCK WAIT或者trx_rows_locked>0均表示有锁的等待
确认后,使用kill process_id 杀死connection(2.id或者3.trx_mysql_thread_id)
结束指定(ID)连接
kill id;
查看正在锁的事务:
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看等待锁的事务:

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
show variables like '%timeout%';

慢Sql查询

//打开慢日志
set global slow_query_log='ON';
查看慢日志定义时长
show VARIABLES like '%long_query%';
慢日志路径
show VARIABLES like '%slow_query%';
//设置慢日志文件
set global slow_query_log_file='D:\slow.log';
select SLEEP(20);
show PROCESSLIST;
select * from information_schema.PROCESSLIST where info is not null;

你可能感兴趣的:(Mysql 常用语句)