当前位置: 首页 > article >正文

MySQL:简述事务的SQL操作

1、查询数据库的隔离级别

选择数据库,查看当前事务隔离界别。
(1)读未提交:READ-UNCOMMITTED
(2)读已提交:READ-COMMITTED
(3)可重复读:REPEATABLE-READ
(4)串行化:SERIALIZABLE

select @@tx_isolation;
select @@global.tx_isolation;

2、设置数据库的隔离级别

set global tx_isolation='REPEATABLE-READ';

3、查询运行中的事务

只能查询此刻正在进行中的事务,已经完成的是查不到的。

SELECT * FROM information_schema.INNODB_TRX;

查询结果包含如下列:trx_id
trx_state
trx_started
trx_requested_lock_id
trx_wait_started
trx_weight
trx_mysql_thread_id
trx_query
trx_operation_state
trx_tables_in_use
trx_tables_locked
trx_lock_structs
trx_lock_memory_bytes
trx_rows_locked
trx_rows_modified
trx_concurrency_tickets
trx_isolation_level
trx_unique_checks
trx_foreign_key_checks
trx_last_foreign_key_error
trx_adaptive_hash_latched
trx_adaptive_hash_timeout
trx_is_read_only
trx_autocommit_non_locking

4、查看连接及对应的事务

比上述查询结果多了如下字段:

SELECT * FROM information_schema.processlist p 
LEFT JOIN information_schema.INNODB_TRX t 
ON p.id = t.trx_mysql_thread_id;

在这里插入图片描述

5、设置AutoCommit

MySQL默认操作模式就是AutoCommit自动提交模式。这就表示除非显式地开始一个事务,否则每个查询都被当做一个单独的事务自动执行。我们可以通过设置AutoCommit的值改变是否是自动提交AutoCommit模式。
通过以下命令可以查看当前autocommit模式

show variables like 'autocommit';

关闭自动提交,每次sql必须通过commit命令提交.

set autocommit = 0;

6、查看进程列表+删除指定进程

SHOW PROCESSLIST;

kill 进程号

在这里插入图片描述

7、锁超时时间的相关操作

查看当前锁超时时间

show variables like 'innodb_lock_wait_timeout';

查看全局锁超时时间

SHOW GLOBAL VARIABLES LIKE 'innodb_lock_wait_timeout';

更改当前锁超时时间为120秒

SET innodb_lock_wait_timeout=120;

更改全局锁超时时间为120秒

SET GLOBAL innodb_lock_wait_timeout=120

http://www.kler.cn/news/284911.html

相关文章:

  • K8S Job
  • CSS优化实践
  • 计算机毕业设计选题推荐-二手物品回收系统-Java/Python项目实战
  • Nuxt3入门:资源文件(第2节)
  • LeetCode第65题 有效数字 结合设计模式:状态模式
  • Linux下C++编程使用动态链接库
  • Openldap可视化工具PhpLdapAdmin服务配置
  • TMPDIR在pip|pip3 install时的作用以及tmp只有noexec权限的解决方法
  • 问题记录之Qt Creator下qDebug中文乱码
  • SparkSQL缓存的用法
  • IM社交-前言
  • 负载均衡的分类有哪些?
  • 路由策略工具
  • 51单片机——模块化编程
  • Kafka分布式集群部署实战:跨越理论,直击生产环境部署难题与解决方案,性能调优、监控与管理策略大揭秘,轻松上手分布式消息中间件
  • 【SQL基础】【leetcode】SQL50题
  • 『功能项目』技能释放【08】
  • Java设计模式【解释器模式】-行为型
  • 【QT线程学习】
  • PowerDesigner16.5 从mysql5.7逆向工程
  • ClickHouse的安装教程
  • 计算机网络概述(Internet结构和ISP)
  • matlab仿真 信道编码和交织(下)
  • 【docker】docker学习笔记
  • Datawhale AI夏令营 第五期 CV方向 Task3笔记
  • GD - GD32350R_EVAL - PWM实验和验证1
  • React原理之Diff算法
  • ESP32-S3 IDF框架 控制 WS2812 灯条:实现多种灯效
  • 【通过h5作为中转页跳转到微信小程序】
  • 【Linux】06.Linux 下的编译器——gcc/g++