开发者社区 > 数据库 > 关系型数据库 > 正文

PolarDB不走分区键 如果有索引 应该也是各个逻辑表添加锁吧?

PolarDB不走分区键 如果有索引 应该也是各个逻辑表添加锁吧? 不会仅仅因为使用了分区表就把行级锁升级成了表级锁吧?

展开
收起
三分钟热度的鱼 2024-05-16 09:48:05 61 0
2 条回答
写回答
取消 提交回答
  • 走不走分区键,和会不会锁全表没什么关系,也不会出现使用了分区表就把行级锁升级到表级锁的问题。mysql生态下,分区表的问题是,即使你只访问了某一个特定的分区,还是会对整个逻辑表加锁,因此如果你有一条sql访问了特定分区,但是不提交,后续对这个表做分区操作(加分区或者删分区),可能导致整个表上的sql都被堵塞。我们这边在802实现了分区级别的MDL,来解决这个问题,只对操作的分区加锁,https://help.aliyun.com/zh/polardb/polardb-for-mysql/user-guide/online-partition-maintenance 此回答整理自钉群“PolarDB专家面对面 - 大表&分区表& 冷温热数据管理& XEngine高压缩引擎功能”

    2024-05-16 12:54:04
    赞同 展开评论 打赏
  • 因为有MVCC所以DML语句不会产生表锁,都是行锁,即使是热备也不会锁表因为有MVCC

    2024-05-16 10:26:31
    赞同 展开评论 打赏

阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。

相关产品

  • 云原生数据库 PolarDB
  • 相关电子书

    更多
    云栖大会:开源 PolarDB 架构演进、关键技术与社区建设 立即下载
    2023云栖大会:和客户一起玩转PolarDB新特性 立即下载
    2023云栖大会:PolarDB for AI 立即下载