mysql myisam 外键_MySQL的myisam和innodb

你的数据库有外键么?

你需要事务支持么?

你需要全文索引么?

你经常使用什么样的查询模式?

你的数据有多大?

思考这些问题或许能够找到合适的方向。

myisam只有索引缓存,只能管理索引,在索引数据大于分配的资源时,交由操作系统来cache,数据文件依赖于操作系统的cache,适合全文索引,这是系统内建的。count()方法使用,因为它存储了这个字段。适合insert语句。小型的项目或应用适合。

innodb部分索引文件还是数据文件,使用的是innodb buffer,不管是索引还是数据自己管理。适合需要事务处理或外键。使用sphinx也可从 innodb获得全文索引,效果不错 。适合数据量大的,因为它支持事务处理和利用事务日志故障恢复。小批量的逐渐查询比较快,大批量的不行。update语句适合,尤其并发量大的时候。innodb需要更多的内存和存储。对于支持innodb的表,影响速度的原因是因为autocomment默认设置是打开的,而且程序没有显示调用begin开始事务,导致每插入一条都自动commit一次,严重影响了速度,可以在执行sql前,调用begin,多条sql形成一个事务(即使autocomment打开也没关系了)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值