我的PHP应用程序中的所有MySQL表都是带有utf8编码的MyISAM。由于可以在辅助应用程序脱机时生成记录,所以我的表键是随机生成的,字母数字VARCHAR;这些字段被设置为utf8_bin编码的二进制,这样它们就可以区分大小写。我立即开始看到性能问题,在其中一个较大的表上复杂的SELECT查询需要超过一分钟,然后其他查询排队等待表锁。我将该表上主键字段的编码更改为utf8,性能恢复到正常状态。然而,我现在拥有的是:
MySQL [(none)]&
我们有一个经常运行的进程,并在类型为innodb的mysql数据库上执行以下步骤。rows == number of rows given if not, ROLLBACK;COMMIT;
由于某种原因,这个过程似乎将ibd文件扩展到比实际大小更大的范围以前,我们有一个大约60 up大小的大型ibdata1,但随后我们删除了所有内容,将my.cnf更改为将数据存储到每个表的单独文件中,而这些事务正在发生的表仍然再次爆炸。有什么方法可以查看ib