我正在将MySQL 5.5与innoDB一起使用。我的服务器的基础是Netty,JDBC和BoneCP。
我有一个包含用户输入(HTTP标头,请求正文等)的日志表。由于诸如安全性和数据恢复之类的原因,该表很少被读取。因此,我们并不关心读取性能。
该表中有五列。
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对此并不在乎。