mysql 事务自动手动提交模式

默认情况下, MySQL启用自动提交模式(变量autocommit为ON)

如果是全局级别,则需要加global,如果是会话级别,则需要加session,如果都没加,默认是session。
全局变量作用域:服务器每次启动将为所有的全局变量赋初始值,修改全局变量针对于所有的会话(连接)有效,但不能跨重启(重启服务器全局变量恢复为默认值)。
会话变量作用域:仅仅针对于当前会话(连接)有效

查询会话事务提交模式:
show session variables like 'autocommit';

查询全局事务提交模式:
show global variables like 'autocommit';

Value的值为ON,表示autocommit开启。OFF表示autocommit关闭。

set global autocommit=0;
set SESSION autocommit=0;

禁止自动提交
SET AUTOCOMMIT=0

开启自动提交:
SET AUTOCOMMIT=1

查询 正在执行的事务:
SELECT * FROM information_schema.INNODB_TRX

查看正在锁的事务
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看等待锁的事务
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

结束正在执行的事务:
使用mysql命令杀掉线程:kill 线程id (trx_mysql_thread_id)

手动提交模式:
BEGIN;
SQL;
COMMIT;

mysql锁机制之间隙锁(Next-Key锁)(五)

你可能感兴趣的:(mysql 事务自动手动提交模式)