当前位置: 首页 > news >正文

网站开发价格多少怎么自己做淘宝客网站吗

网站开发价格多少,怎么自己做淘宝客网站吗,简单网站建设合同模板,移动应用开发干什么的在 MySQL 8.0.12 中,我们引入了一种新的 DDL 算法,该算法在更改表的定义时不会阻塞表。第一个即时操作是在表格末尾添加一列,这是来自腾讯游戏的贡献。 然后在 MySQL 8.0.29 中,我们添加了在表中任意位置添加(或删除&…

在 MySQL 8.0.12 中,我们引入了一种新的 DDL 算法,该算法在更改表的定义时不会阻塞表。第一个即时操作是在表格末尾添加一列,这是来自腾讯游戏的贡献。

然后在 MySQL 8.0.29 中,我们添加了在表中任意位置添加(或删除)列的可能性。

在这篇文章中,我想重点讨论盲目使用此功能时可能发生的一些危险。

默认算法

从 MySQL 8.0.12 开始,对于任何支持的 DDL,默认算法是 INSTANT。这意味着 ALTER 语句只会修改数据字典中表的元数据。在操作的准备和执行阶段,不会对表进行独占元数据锁,表数据不受影响,使得操作是即时的。

另外两种算法是 COPYINPLACE,Online DDL 操作参见手册。

然而,即使支持操作,Online DDL 也存在限制:一个表支持 64 次即时更改。到限制后,需要“重建”该表。

如果在 ALTER 语句(DDL 操作)期间未指定算法,则会默默地选择适当的算法。当然,如果没有预料到,这可能会导致生产中出现噩梦般的情况。

始终指定算法

因此,第一个建议始终是指定算法,即使它是执行 DDL 时的默认算法。当指定算法时,如果 MySQL 无法使用它,它将抛出错误,而不是使用其他算法执行操作:

SQL > ALTER TABLE t1 DROP col1, ALGORITHM=INSTANT;
ERROR: 4092 (HY000): Maximum row versions reached for table test/t1.
No more columns can be added or dropped instantly. Please use COPY/INPLACE.

监控即时变化

第二个建议也是监视对表执行的即时更改的数量。

MySQL 在 information_schema 表中保留行版本:

SQL > SELECT NAME, TOTAL_ROW_VERSIONSFROM INFORMATION_SCHEMA.INNODB_TABLES WHERE NAME LIKE 'test/t1';
+---------+--------------------+
| NAME    | TOTAL_ROW_VERSIONS |
+---------+--------------------+
| test/t1 |                 63 |
+---------+--------------------+

在上面的示例中,DBA 将能够执行一项额外的 INSTANT DDL 操作,但在此之后,MySQL 将无法执行另一项操作。

作为 DBA,监视所有表并决定何时需要重建表(以重置该计数器)是一个很好的做法。

这是添加到监控工具的建议查询的示例:

SQL > SELECT NAME, TOTAL_ROW_VERSIONS, 64-TOTAL_ROW_VERSIONS AS"REMAINING_INSTANT_DDLs",ROUND(TOTAL_ROW_VERSIONS/64 * 100,2) AS "DDLs %"FROM INFORMATION_SCHEMA.INNODB_TABLESWHERE TOTAL_ROW_VERSIONS > 0 ORDER BY 2 DESC;
+--------------------------+--------------------+------------------------+--------+
| NAME                     | TOTAL_ROW_VERSIONS | REMAINING_INSTANT_DDLs | DDLs % |
+--------------------------+--------------------+------------------------+--------+
| test/t1                  |                 63 |                      1 |  98.44 |
| test/t                   |                  4 |                     60 |   6.25 |
| test2/t1                 |                  3 |                     61 |   4.69 |
| sbtest/sbtest1           |                  2 |                     62 |   3.13 |
| test/deprecation_warning |                  1 |                     63 |   1.56 |
+--------------------------+--------------------+------------------------+--------+

要重置计数器并重建表,可以使用 OPTIMIZE TABLE <table>ALTER TABLE <table> ENGINE=InnoDB

结论

总之,MySQL 8.0 引入的 DDL 操作 INSTANT 算法通过避免阻塞更改彻底改变了模式更改。然而,由于 64 次即时更改的限制,在需要重建表之前,在 ALTER 语句期间显式指定算法以避免意外行为至关重要。还建议通过 information_schema 监视即时更改的数量,以避免在不知不觉中达到即时更改限制而出现意外情况,并仔细计划将表重建。

享受 MySQL!

更多技术文章,请访问:https://opensource.actionsky.com/

关于 SQLE

SQLE 是一款全方位的 SQL 质量管理平台,覆盖开发至生产环境的 SQL 审核和管理。支持主流的开源、商业、国产数据库,为开发和运维提供流程自动化能力,提升上线效率,提高数据质量。

SQLE 获取

类型地址
版本库https://github.com/actiontech/sqle
文档https://actiontech.github.io/sqle-docs/
发布信息https://github.com/actiontech/sqle/releases
数据审核插件开发文档https://actiontech.github.io/sqle-docs/docs/dev-manual/plugins/howtouse
http://www.15wanjia.com/news/171934.html

相关文章:

  • 本地安装网站无法连接数据库免费网址域名
  • 创新的商城网站建网站注册公司
  • 郑州网站推广外包网站建设衤金手指花总十四
  • 电脑小游戏网站徐州网络科技公司有哪些
  • typecho 企业网站安阳seo公司
  • 新手怎么搭建网站知雅汇网页设计实训报告
  • 张浦专业做网站公司注册地址就是公司地址吗
  • 公司网站怎么注销创世网站
  • 诸暨网站制作建设方案怎么写
  • 论坛网站论坛网站建设建设优秀音乐网站设计欣赏
  • 凤凰网站ui专业设计游戏加盟招商
  • 茶山做网站wordpress结婚模板
  • 网站页面下沉的特效代码邢台网站建设讯息
  • 传统企业公司网站优化案例微信小程序功能开发
  • 江苏省网站备案系统做网站需要域名 域名是啥
  • 书籍网站开发多少钱个人主页的html设计
  • 大一学生做的网站智慧建设网站
  • 泰州网站制作专业网站开发软件开发项目
  • 淘宝网站建设费用开发公司施工管理事业部领导如何同下属协调沟通
  • 企业网站建设需要哪些设备网站建设远程教育大学论文
  • 网站设计一般多长时间松江区网站建设
  • 中国都有哪些网站高端礼品定制网站
  • 织梦医疗网站源码建设银行网站多少
  • 西部数码网站管理助手v4.0什么网站可以做邮件列表
  • 有什么做衣服的网站吗规划网站开发总体方案
  • 中国空间站有多大手机页面设计软件
  • 白沟网站开发建筑工程网络进度计划备注填写范例
  • 建立内部网站需要多少钱广州市住房建设公租房网站
  • 网站开发的经济可行性简答网站内容建设的时候内链重要性
  • 阜蒙县建设镇官方网站html网站开发心得