zoukankan      html  css  js  c++  java
  • mysql READ-COMMITTED 模式下 行锁不会升级到表级锁

    mysql> select sn,id,info from s100 group by id;
    +-----+------+------+
    | sn  | id   | info |
    +-----+------+------+
    | 227 |    1 | aa   |
    | 228 |    2 | bb   |
    +-----+------+------+
    2 rows in set (0.02 sec)
    
    mysql> select sn,count(id),info from s100 group by id;
    +-----+-----------+------+
    | sn  | count(id) | info |
    +-----+-----------+------+
    | 227 |     32768 | aa   |
    | 228 |         1 | bb   |
    +-----+-----------+------+
    2 rows in set (0.02 sec)
    
    mysql> 
    mysql> 
    mysql> show index from s100;
    +-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
    +-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | s100  |          0 | PRIMARY  |            1 | sn          | A         |       33366 |     NULL | NULL   |      | BTREE      |         |               |
    +-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    1 row in set (0.00 sec)
    
    mysql>  show variables like '%tx_isolation%';
    +---------------+----------------+
    | Variable_name | Value          |
    +---------------+----------------+
    | tx_isolation  | READ-COMMITTED |
    +---------------+----------------+
    1 row in set (0.00 sec)
    
    
    
    mysql> show variables like '%commit%';
    +--------------------------------+-------+
    | Variable_name                  | Value |
    +--------------------------------+-------+
    | autocommit                     | OFF   |
    | binlog_order_commits           | ON    |
    | innodb_api_bk_commit_interval  | 5     |
    | innodb_commit_concurrency      | 0     |
    | innodb_flush_log_at_trx_commit | 1     |
    +--------------------------------+-------+
    5 rows in set (0.00 sec)
    
    
    Session 1:
    
    mysql> select * from s100 where id=2 for update;
    +-----+------+------+
    | sn  | id   | info |
    +-----+------+------+
    | 228 |    2 | bb   |
    +-----+------+------+
    1 row in set (0.02 sec)
    
    
    Session 2:
    
    Database changed
    mysql> insert into s100(id,info) values(9999,'fcadfad');
    Query OK, 1 row affected (0.00 sec)
    
    
    RC模式下,是行锁 不会上升到表级锁

  • 相关阅读:
    【报错问题】mysql无法使用别名查询
    【报错问题】java.lang.IllegalStateException: It is illegal to call this method if the current request is not in asynchronous mode
    【源码】-springboot 启动后立马执行的方式
    【LINUX】$搭配使用的含义
    【JAVA】javaMail附件名超过60显示错误
    【Gradle】简单入门
    慢SQL案例之一
    【Flink】一. 什么是Flink?
    【spring基础】环境的搭建与后台
    [org.apache.common][打算学习开源工具包]
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199883.html
Copyright © 2011-2022 走看看