在线打mysql代码_mysql 在线alter table要留神_mysql
mysql 在线alter table要小心
mysql 5.6之前, alter table操作对可用性有巨大的冲击(除了纯改表名、不影响任何数据的alter table)。它的原理是,
0. alter table语句开始
1. 等待当前所有操作结束
2. 施加shared table lock, 能读不能写
3. 创建临时表,执行table alteration并将所有数据复制到临时表中
4. 抛弃旧表并把新表改名,完成操作; 在这个点上会对表施加exclusive table lock, 也就是说连读都不行了。
如果表很大,这个过程会导致比较严重的不可用(分钟级或以上).
在5.6之前,有一个针对innodb index的优化:MySQL 5.5, and MySQL 5.1 with the InnoDB Plugin, optimized CREATE INDEX and DROP INDEX to avoid the table-copying behavior
到5.6时,innodb上了一个特性叫做"online ddl", 对于很多alter table操作,可以避免表复制、或/和 dml blocking等。 具体避免哪些,要看具体使用的是哪种alter table操作。请参见:
http://dev.mysql.com/doc/refman/5.6/en/innodb-create-index-overview.html . 对于最常见的"add column"操作,虽然不会block dml, 但仍存在数据复制,代价依然不低。
欢迎大家阅读《mysql 在线alter table要留神_mysql》,跪求各位点评,by 搞代码
微信 赏一包辣条吧~
支付宝 赏一听可乐吧~
在线打mysql代码_mysql 在线alter table要留神_mysql相关推荐
- mysql alter table 速度慢_MySQL中ALTER TABLE时的性能问题
当对于一个大表进行ALTER TABLE的时候,性能问题就产生了.MySQL大部分改动的步骤如下:根据新的表结构创建一个空表,从旧表中把数据取出来插入到新表中,在删除旧表.这是个非常漫长的过程.许多人 ...
- mysql锁表_MySQL中Alter table 你不知道的性能问题
前言: MySQL 的大表运维总是令人头疼的一件事,特别是大表表结构的修改尤为困难. 首先,alter table 的process不可被kill , 一旦执行就不可回退. 其次,大多数的alter ...
- mysql 锁24小时_MySQL中Alter table 不长时间锁表的情况汇总。
查看原文:http://www.tanbo.name/html/99669.html 前言: MySQL 的大表运维总是令人头疼的一件事,特别是大表表结构的修改尤为困难. 首先,alter table ...
- MySQL 新增字段(alter table add column),报错:Duplicate entry
问题 执行一个增加字段的DDL语句脚本时,报错,错误如下: Error 1062: Duplicate entry 'c51d3db8-59a5 2022-06-28 17:59:59' for ke ...
- mysql的altertable_mysql 的 alter table 操作性能小提示
通常情况下,修改表的结构一般不会有太大问题,无非就是一个 alter table 操作,但是对于大表做 alter 操作是一个大问题,请小伙伴们慎重. mysql执行大部分修改表结构操作方法是创建一个 ...
- mysql 删除process_MySQL中Alter table 你不知道的性能问题
前言: MySQL 的大表运维总是令人头疼的一件事,特别是大表表结构的修改尤为困难. 首先,alter table 的process不可被kill , 一旦执行就不可回退. 其次,大多数的alter ...
- 在线书架html代码大全,在线书架
this.p={ m:2, b:2, loftPermalink:'', id:'fks_082064083095084064084095084095093086083068086086083', b ...
- 在线书架html代码复制,在线书架--竖黄代码
如何将以上书架代码放在自己的页面书架上,操作如下: 先复制下面书架代码,然后在自己博客首页上点"换风格"--再点"设置首页内容"--再点"添加自定义模 ...
- 【MYSQL报错】ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry
解决方案: 将主键字段值为0的那条记录值改为其他大于0且不重复的任意数 修改主键字段为auto_increment 把刚才修改过的那条记录的值还原
最新文章
- 图解Transformer:Attention Is All You Need
- RTFNet:基于可见光/红外图像的城市自动驾驶道路场景语义分割
- 最近一段时间开发客户端app的感悟
- element-ui表格缩略图悬浮放大
- python关键字参数可以避免什么问题_python入门课|Python关键字参数使用方法公布,能解决80%的python函数问题...
- linux路由内核实现分析(二)---FIB相关数据结构(2)
- STM32工作笔记0044---什么是二极管什么是三极管
- 软件项目测试报价单,某软件项目报价单
- 人工智能视频教程下载
- unity3D学习笔记1
- MySql desc 的三种用法
- 【pytest官方文档】解读-fixtures函数和测试函数的参数化
- PE和CDlinux二合一启动盘制作
- PY_GD_1 Python使用print()函数时输出不含多余空格的数据
- 中国队夺金幕后的「AI手语翻译官」:初次上岗,手语可懂度超90%
- Vue3通过npm或者yarn启动后,显示“Network: use --host to expose”,无法访问
- 2345浏览器卸载之后如何找回收藏夹中的内容?
- MyEclipse如何配置Tomcat
- 初学编程时需要了解的10件事情
- python3新式类_python 3新式类的多继承
热门文章
- TCP/IP笔记 应用层(2)——FTP
- 国内版Office 365和Azure AAD绑定的问题及解决方案
- WCF中使用自定义behavior提示错误的解决方法
- Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案
- 【报告分享】B2B内容营销指南—制定有效内容策略-领英.pdf(附下载链接)
- cmake命令的python库的位置参数-DTORCH_PATH
- python基本词汇的特点_开课吧老师为你讲解 Python都有什么优点?
- KMP算法模板与解析
- matplotlib的学习
- Websocket教程SpringBoot+Maven整合(详情)