优化InnoDB

简介

InnoDB对内存很敏感,如果它没有足够的内存来缓冲一个合理规模的数据集,那么它的性能可能会有所损失

#设置

innodb_file_per_table : 设置该选项将使InnoDB对每个表使用一个独立的数据存储文件.
默认情况下,InnoDB为每个数据库创建一个文件并用这个文件来管理数据库的表.
这意味着如果表的大小先增大然后有缩小,则很难回复磁盘空间.

步骤:
如果你先在现有数据库上更改此设置,应该备份该数据库,然后删除它,再更改选项,然后重新启动服务器,最后从备份中重新加载该数据库
innodb_buffer_pool_size 
如果只使用InnoDB表,可以把这一项设置为可用内存的70%左右.
如果混合使用MyISAM和InnoDB,则将它减小一点以便给MyISAM留一些空间
innodb_log_buffer_size=4M
4M的大小可以满足绝大部分记录的需求,而且提供了一个合理的性能.如果你拥有很大的文本字段或blob字段,或者记录非常大,可以稍微提高一点
innodb_log_file_size = 256M 
这是推荐的值
innodb_flush_log_at_trx_commit =2
将日志文件刷新到磁盘的频率.如果你可以容忍在发生崩溃时丢失一些记录,那么可以把它的值设为2来减少磁盘写入的数量,加快性能已经减少驱动器上的I/O负担

参考

高性能PHP应用开发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值