首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL timeout 参数可以让事务不完全回滚

    MongoDB,PolarDB,MySQL写的少了,今天咱们写一写,MySQL生疏了的DBA,把两个参数给混淆的故事,故事是这样的,在MySQL中,有两个参数 innodb_lock_wait_timeout lock_wait_timeout...innodb_table_locks 是控制innodb引擎下的数据库锁中,是否存在表锁,在正常的系统中,这个锁是要开启的,对这个参数的调整基本上是没有太多的不同的认知,而lock_wait_timeout...这个参数,从官方的说明中是控制事务等待行锁最长的时间,但在有了innodb_lock_wait_timeout这个参数的情况下,这个lock_wait_timeout参数更多的意义就与DDL 有关了。...因为DDL 操作也需要获取行锁,尤其在DDL ONLINE 的情况下,那么等待多长时间行锁,就是决定DDL能否成功的一个关键,所以这个lock_wait_timeout 实际上的意义与你的DDL 等待的时长有关...,比如当一个select * from table for update 的语句在处理的时候,那么你的alter table 的操作必须等待这个操作的结束,所以lock_wait_timeout 都设置的比较大

    13610

    mysqldump与innobackupex备份过程你知多少(完结篇)

    如果一个会话中使用LOCK TABLES语句对某表加了表锁,在该表锁未释放前,那么另外一个会话如果执行FLUSH TABLES和FLUSH TABLES WITH READ LOCK语句会被阻塞,而如果数据库中lock_wait_timeout...语句获取全局读锁超时而导致备份失败退出 * 2)、如果一个会话正在执行DDL语句,那么另外一个会话如果执行FLUSH TABLES和FLUSH TABLES WITH READ LOCK语句会被阻塞,而如果数据库中lock_wait_timeout...in share mode和for update语句来显式加锁),那么另外一个会话如果执行FLUSH TABLES和FLUSH TABLES WITH READ LOCK语句会被阻塞,而如果数据库中lock_wait_timeout...细心的童鞋可能已经发现了,innobackupex备份时的general_log中执行FLUSH NO_WRITE_TO_BINLOG TABLES语句之前,有这样一句语句:SET SESSION lock_wait_timeout

    1.9K80

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券
      首页
      学习
      活动
      专区
      圈层
      工具
      MCP广场