MySQL的事务、锁和日志

一、事务

1、介绍

只有InnoDB支持事务
维护数据库的完整性
管理DDL、DML、DCL操作

2、基本操作

在这里插入图片描述

select @@autocommit;
set autocommit=0;

3、特性

ACID

4、隔离级别

MySQL默认是可重复读,Oracle默认是读已提交。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、锁

协调计算机的线程并发访问某一资源的机制。(避免冲突)

1、分类

表锁适合Web应用,行锁适合在线事务处理系统。
在这里插入图片描述

2、InnoDB行锁

在这里插入图片描述

3、MyISAM表锁

执行查询操作,自动加读锁;
执行更新操作,自动加写锁;

三、日志

1、分类

a、错误日志
默认开启

show variables like 'log_error%'; #查看错误日志的存放位置

b、二进制日志
介绍:记录了DDL和DML,主从复制使用了binlog,MySQL8.0是默认开启。
格式:statement记录的是SQL语句,row记录的是行数据的变更,mixed是混合了前面两种。

show variables like 'log_bin'; #查看是否启用
show variables like 'binlog_format'; #查看日志格式
show binlog events; #查看所有日志
show master status; #查看最新日志
show binlog events in 'binlog.000008'; #查看指定日志
reset master; #清空日志
#重启mysql
net stop mysql
net start mysql 

c、查询日志
记录了所有操作语句,默认不开启。

show variables like 'general_log'; #查看是否开启查询日志
set global general_log=1; #开启查询日志
#在my.ini文件中配置,开启查询日志
general_log=1
general_log_file=host_name.log

d、慢查询日志
记录执行时间超过阈值且扫描行数满足下限的SQL语句。

show variables like 'slow_query_log%';
set global slow_query_log = 1;
show variables like 'long_query_time%';
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值