美文网首页
mysql 事务自动手动提交模式

mysql 事务自动手动提交模式

作者: 一只弹窗仔 | 来源:发表于2021-11-09 23:14 被阅读0次

    默认情况下, 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 事务自动手动提交模式

          本文链接:https://www.haomeiwen.com/subject/soavzltx.html