在mysql中处理大表

7 mysql performance

我有一个非常大的表(大约> 100.000.000 行和> 50GB 的大小),现在它的性能下降很大。在主键 (id) 下,它使用 varchar(500) 字段上的全文键来使用 mysql 全文搜索选项。

但是,现在保存和获取该表的行变得非常慢.. 我该如何处理?这是我的第一个问题。我的第二个问题是,使用该表的 mysqldump 进行备份是没有用的,因为将它导入回来需要几个月的时间。第三个问题是,这个表使用引擎 MYISAM 并且转换到 INNODB 也是不可能的(我已经测试过它并在 72 小时后中止了过程)。

那么,什么是一个很好的面向未来的方法来加速这个表,正确备份它并可能将它转换为 INNODB?(INNODB 应该接受我的 mysql 版本的 FULLTEXT)

Rap*_*tor 0

如果您的表主要用于写入操作(INSERT / UPDATE),则应该使用MyISAM。

如果您的表主要用于读取操作(SELECT),则应该使用InnoDB。

但是,您应该考虑管理您的表并向列添加适当的索引。