OnlineDDL
计算节点管理端(3325)支持OnlineDDL功能,保证了在进行表变更时,不会堵塞线上业务读写,库依然能正常对外提供访问,具体使用方法如下:
- 登录3325端管理端口,使用onlineddl"[DDLSTATEMENT]"语法可以执行onlineddl语句,例如:onlineddl “alter table customer add column testddl varchar(20) default ‘测试onlineddl’”;
- 执行show @@onlineddl语句,即可显示当前正在运行的OnlineDDL语句及语句执行速度,progress显示当前DDL执行进度(单位:%),speed显示为当前DDL运行速度(单位:行/ms),例如:
mysql> show @@onlineddl;
±-------------±------------------------------------------------------------------------------±---------±--------+
| schema | onlineddl
| progress | speed |
±-------------±------------------------------------------------------------------------------±---------±--------+
| TEST_DML_JWY | ALTER TABLE CUSTOMER ADDCOLUMN TESTDDL VARCHAR(20) DEFAULT ‘测试ONLINEDDL’ | 0.2300 | 23.3561 |
±-------------±------------------------------------------------------------------------------±---------±--------+
特殊说明:onlineddl 语句不是执行下去就代表DDL完成,返回了“Query OK, 0 rows affected ”仅代表DDL语句可以执行,如果看是否执行完成,要查看 show @@onlineddl中的progress显示的进度。show @@onlineddl结果为空时,代表所有DDL执行完毕当前无其他DDL任务,如果中途因为网络或其他异常DDL中断,会回滚整个DDL;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




