mysql事务及慢查询

1,

MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务

原子性:构成事务的的所有操作必须是一个逻辑单元,要么全部执行,要么全部不执行。

稳定性(一致性)数据库在事务执行前后状态都必须是稳定的。

隔离性:事务之间不会相互影响。

可靠性(持久性)事务执行成功后必须全部写入磁盘。

读未提交 读已提交 重复读 串行化
脏读:指一个线程中的事务读取到了另外一个线程中未提交的数据。
不可重复读(虚读):指一个线程中的事务读取到了另外一个线程中提交的update的数据。
幻读:指一个线程中的事务读取到了另外一个线程中提交的insert的数据。

   事务 数据一致性

2,慢查询

  mysql 默认链接100     druid连接池 带有慢sql

修改/etc/my.cnf配置文件,重启 MySQL, 这种永久生效.

[mysqld]

slow_query_log = ON    开启慢查询日志

slow_query_log_file = /var/log/mysql/slow.log

long_query_time = 1    大于1秒的记录下来

3,慢查询分析工具

MySQL自带的mysqldumpslow

mysqlsla工具,功能非常强大。数据报表,非常有利于分析慢查询的原因,包括执行频率,数据量,查询消耗等

percona-toolkit

 

4,mysql性能分析

show profile

可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等,以及该SQL执行所耗费的时间等

posted @ 2019-04-03 12:56  song123666  阅读(786)  评论(0编辑  收藏  举报