我正在使用带有 innoDB 的 MySQL 5.5。我的服务器的基础是Netty、JDBC和BoneCP。
我有一个包含用户输入(HTTP header 、请求正文等)的日志表。出于安全和数据恢复等原因,该表将很少被读取。因此,读取性能不是我们关心的。
此表中有五列。
Name | Type
--------------------------------------------------
logID | big Integer(auto-increment)(primary key)
userNumber | medium integer
logTime | timestamp
header | varchar(100)
body | varchar(200)
提高插入性能的技巧有哪些? 另外,这种情况下是否需要 logID?
最佳答案
如果从未引用过该表,为什么还要在其中使用任何键?好像没必要。它只会增加插入时间,没有任何用处。
我的建议是删除 logID 并且根本不在表上创建任何索引。
另一个优化是将表类型更改为 myISAM。当你只插入而没有对表进行约束时,InnoDB 会花费你时间来选择 ACID 合规性,而 myISAM 不关心这个。
关于mysql - 提高只写表的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20236916/