• 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模式下,是行锁 不会上升到表级锁

  • 相关阅读:
    接口的使用
    web service 实现无刷新返回一个表
    webservice 实现动态刷新
    js 实现子树选中时父目录全被选中
    相册的简单实现
    基于角色的身份验证3
    一个购物车的简单实现(多层开发)
    asp2.0 中实现 msdn 左边导航栏
    xsl 中 xsl:copy 的使用
    企业库中使用transaction(企业库中的列子)
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199883.html
Copyright © 2020-2023  润新知