我正在使用仅限MyISAM的数据库,并且对大表的更新花费了太多时间。表的大小约为30 GB(MYD和MYI各15 GB)。无论如何,除了查看索引之外,我还能提高速度吗?
答案 0 :(得分:1)
MyIsam密钥缓存调优: http://docs.oracle.com/cd/E19957-01/mysql-refman-5.4/optimization.html#myisam-key-cache
一般性能优化:(有很多) http://docs.oracle.com/cd/E19957-01/mysql-refman-5.5/optimization.html
30 GB非常大,您运行的是高端服务器吗?
答案 1 :(得分:1)
如果您正在加载大量数据,请查看批量插入命令,甚至根据您的具体情况加载数据infile。
如果您正在进行大量插入操作,则可能需要在插入之前测试禁用密钥。它可能有助于加快速度。
使用
insert into myTable values("rec1","hello"),("rec2","world"),("rec3","cheesy huh");
将在1个语句中插入3条记录 - 再次,您需要对其进行测试。
我已经完成了这种带有数千行的插入形式,并且在我的示例中效果很好。
答案 2 :(得分:0)
可能有趣的一些注意事项: