network-center / interesting

collect interesting things. see Issues
https://network-center.github.io/interesting/
MIT License
0 stars 0 forks source link

2018年06月11日 修改存储引擎和大数据更快导入 #31

Open imzyf opened 6 years ago

imzyf commented 6 years ago

今天要修改一个表的 存储引擎,表有 2G 数据,直接修改等了 1 个多小时都没完成

所以想到先 mysqldump --no-create-info 导出数据,然后清空表,修改存储引擎,再倒回数据

倒回数据时,数据导入越来越慢,想到可能是 索引 问题,然后删除索引,再倒回数据果然快很多

MySQL导出所有Index和约束的方法

tyl569 commented 6 years ago

更改存储引擎的初衷是什么?更改前后有什么质的变化?

imzyf commented 6 years ago

原来是 MyISAM 历史问题,现在库中的表统一使用 InnoDB

对于数据库优化,首先还是要考虑 SQL 优化,表的设计优化,其次才是数据库设置优化

MyISAM 理论上读更快,表级锁,没事务;但是一般都是推荐使用 InnoDB 再具体原因还不清楚