暂无图片
mysql中的optimize 大表,会导致表无法提供业务,这个有替代方法吗?
我来答
分享
暂无图片 匿名用户
mysql中的optimize 大表,会导致表无法提供业务,这个有替代方法吗?

mysql中的optimize 大表,会导致表无法提供业务,这个有替代方法吗?

比如我某个大表optimize 跑了50分钟,那么这个期间,无法提供业务,请问这个有替代方法吗?


比如pt-osc 之类的能实现吗?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
everything

可以。
innodb引擎的表执行optimize时,实际就是执行ALTER TABLE xxx FORCE来重建表从而更新统计数据和清理碎片。
可以使用pt-osc或gh-ost执行
ALTER TABLE xxx ENGINE=innodb来重建表,避免阻塞业务。
注意:使用pt-osc、gh-ost执行ddl语句时,会新建一个影子表后进行数据复制,影子表大小是<=原表的;因此需要至少预留大于目标表的磁盘空间。例如:目标表为200G,则至少需要预留200G。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
如何把系统表空间迁移到自定义表空间?
回答 1
已采纳
你不是要迁移到系统表空间么,咋又要迁移出来了呢.官网都有的,你可以看下官网的DDL语法:https://dev.mysql.com/doc/refman/8.0/en/createtablespace
mysql的btree索引是否存储空值
回答 3
唯一索引是允许有NULL值的。
Mysql中的一个表经常出现Table ‘XXX’ is marked as crashed and last (automatic?) repair failed,有什么原因会导致出现这个问题
回答 1
此错误为表损坏,修复即可。一般原因为服务器突然断电,而有程序还在往表里写数据。或者表的数据很大。避免浪费时间去修表。注意服务器操作时停掉数据库。修复1、先停止MySQL:servicemysqldst
mysql怎么检查主从一致?
回答 2
查看两个yes和一个id号:SlaveIORunning:YESSlaveSQLRunning:YES截取远程Position号mysqlh192.168.18.31u'ceshi'p123e'sho
怎么确保elasticsearch 和mysql的数据一致性?
回答 2
已采纳
从mysql解析归档日志到es,也算是能做到差不多一致。只是不是实时的。绝对意义上的一致不能保证。
MySQL怎样把会话变量sql_warnings恢复成默认值?
回答 1
已采纳
SET@@session.sqlwarnings&nbsp;DUFAULT;等价于&nbsp;SET@@local.sqlwarningsDUFAULT;&nbsp;SET@@local.sqlwar
Impossible where noticed after reading const tables
回答 4
mark
阿里云和华为云上的mysql企业级特性的支持情况咋样的?
回答 1
云上只能是使用云实例上安装企业版的方式。云厂商的MySQLRDS服务无法使用。企业版没有限制,限制在于云厂商是否让你在云实例上能够具有充足的权限去安装。
MySQL 的mediumtext类型 ,达梦数据库什么类型比较接近?
回答 1
达梦数据库:TEXT/LONGVARCHAR类型,变长字符串类型,其字符串的长度最大为2G1,可用于存储长的文本串。MYSQL:MediumText最大长度16777215个字符(2^241)
请教下,这个错是因为啥?依赖包都装了,版本是0.56
回答 1
mysql都出到8了。给您给建议用官方的routermgr吧。mha太过陈旧了。