mysql更新/配置语句的速率.乘以一列
发布时间:2021-01-19 18:49:25 所属栏目:编程 来源:网络整理
导读:我在MySql表“ temp”中有一百万行,并但愿将列“ t”(int无标记,索引)乘以1000. mysql update temp set t=1000*t; 此进程必要25秒.对未体例索引的列执行沟通的语句必要10秒钟; 有什么设法可以使这个进程更快吗?我必需将其应用于高出1e5的表. 最佳谜底索引
我在MySql表“ temp”中有一百万行,并但愿将列“ t”(int无标记,索引)乘以1000.
此进程必要25秒.对未体例索引的列执行沟通的语句必要10秒钟; 有什么设法可以使这个进程更快吗?我必需将其应用于高出1e5的表. 最佳谜底 索引与这里的题目无关.思量一下您在做什么-您正在对表中的全部行举办突变,因此,无论怎样选择它们,而且无论是否在t上都有索引,都仍在扫描整个表.UPDATE操纵== IO是您的瓶颈.获取更快的磁盘. 假如您行使的是InnoDB,我的独一提议是查察将innodb_flush_log_at_trx_commit调解并将其配置为2是否有助于进步机能,但我对此暗示猜疑,由于它只是1个查询.禁用密钥并在UPDATE之后从头启用它们在InnoDB中不起浸染. (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |