欢迎来到天天文库
浏览记录
ID:8969679
大小:18.87 KB
页数:4页
时间:2018-04-13
《mysql的配置参数详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、MySQL的my.cnf配置参数详解key_buffer 索引块是缓冲的并且被所有的线程共享。key_buffer_size是用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写),到你能负担得起那样多。如果你使它太大,系统将开始换页并且真的变慢了。默认数值是8388600(8M),我的MySQL主机有2GB内存,所以我把它改为402649088(400MB) max_connections 允许的同时客户的数量。增加该值增加mysqld要求的文件描述符的数量。这个数字应该增加,
2、否则,你将经常看到Toomanyconnections错误。默认数值是100 max_allowed_packet 导入时一个包的最大尺寸。消息缓冲区被初始化为net_buffer_length字节,但是可在需要时增加到max_allowed_packet个字节。缺省地,该值太小必能捕捉大的(可能错误)包。如果你正在使用大的BLOB列,你必须增加该值。它应该象你想要使用的最大BLOB的那么大。 table_cache 为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。M
3、ySQL对每个唯一打开的表需要2个文件描述符。默认数值是64,我把它改为512 配置Myisam表的参数: record_buffer_size 每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描,你可能想要增加该值。默认数值是131072(128K),我把它改为16773120(16M) sort_buffer_size 每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速ORDERBY或GROUPBY操作。默认数值是2097144(2M
4、),我把它改为16777208(16M) read_buffer_size Eachthreadthatdoesasequentialscanallocatesabufferofthissizeforeachtableitscans.Ifyoudomanysequentialscans,youmightwanttoincresethisvalue read_rnd_buffer_size Whenreadingrowsinsortedorderafterasort,therowsarere
5、adthroughthisbuffertoavoiddiskseeks.SettingthevariabletoalargevaluecanimproveORDERBYperformancebyalot.However,thisisabufferallocatedforeachclient,soyoushouldnotsettheglobalvariabletoalargevalue.Instead,changethesessionvariableonlyfromwithinthoseclientst
6、hatneedtorunlargequeries. Bulk_insert_buffer_size 该参数于4.0.3中引入。MyISAM使用一个树型的缓冲区来加速大量的插入,如INSERT…SELECT,INSERT…VALUES(…),VALUES(…),…,LOADDATAINFILE等。该参数指定了缓冲区的大小。缺省值为8M,设置为0则表示不使用该优化。如果不使用MyISAM表,则可以将其设置为0。 myisam_sort_buffer_size 配置InnoDB表的参数 inn
7、odb_buffer_pool_size innodb_buffer_pool_size的作用就相当于key_buffer_size对于MyISAM表的作用一样。InnoDB使用该参数指定大小的内存来缓冲数据和索引。对于单独的MySQL数据库服务器,最大可以把该值设置成物理内存的80%。根据MySQL手册,对于2G内存的机器,推荐值是1G(50%) innodb_flush_log_at_trx_commit 该值指定InnoDB记录日志的方式。如果设置为1,则每个事务提交的时候,MySQL都会
8、将事务日志写入磁盘。如果设置为0或者2,则大概每秒中将日志写入磁盘一次。(还不清楚0和2的区别)。实际测试发现,该值对插入数据的速度影响非常大,设置为2时插入10000条记录只需要2秒,设置为0时只需要1秒,而设置为1时则需要229秒。因此,MySQL手册也建议尽量将插入操作合并成一个事务,这样可以大幅提高速度。根据MySQL手册,在存在丢失最近部分事务的危险的前提下,可以把该值设为0。 innodb_log_file_size Thesizeoft
此文档下载收益归作者所有