全球旧事资料 分类
存,不管是否需要这么大的空间。如果它的值大于排序需要的空间,那么就意味着浪费。sort_buffer_size有可能会受CPU缓存的影响。Sort_merge_passes
Sort_merge_passes的值较大说明应该增加sort_buffer_size,也许仅仅是为某些查询,最好的办法就是优化排序性能较慢的查询。sort_buffer_size为3M,能够满足系统的查询要求。对于排序没有额外要求的情况下不需要调整。
i
odb_log_file_size
I
odb_log_files_i
_group
fI
oDB
日志文件总体大小由
i
odb_log_file_size

i
odb_log_files_i
_group控制,并且它们对写入的性能影响较大。这两个文件默认大小都较小,对于高性能的负载,这个大小是不够的,日志文件总大小的上限是4GB,但是即使是写入负载极高的查询也只需要几百兆,比如总共256MB。i
odb_log_buffer_size
I
oDB在写事务日志的时候,为了提高性能,也是先将信息写入I
odb_log_buffer中,当满足i
odb_flush_log_at_trx_commit参数所设置的相应条件或者日志缓冲区写满之后,才会将日志写到文件中。可以通过i
odb_log_buffer_size参数设置其可以使用的最大内存空间。控制缓冲大小的变量是i
odb_log_buffer_size。不需要把缓冲区变得很大。推荐值是1MB到8MB。除非要写入大量的巨型BLOB记录,否则这个大小就足够了,日志相对I
oDB的正常数据要紧凑得多。它们不是基于页面的,所以它们不会在存储数据的时候浪费整个页面。i
odb_os_log_writte

可以通过showi
odbstatus命令的log部分检测I
oDB向日志文件写入了多少数据,一个好的办法就是观察10秒到100秒时间间隔内的数据,并且注意最大值,可以使用这个值来判断日志缓冲大小是否合适。例如,如果最大数据是每秒写入100KB,那么1MB的日志缓存可能就足够了。也可以使用这个指标来决定日志文件的合适大小。如果最大值是每秒100KB,256MB日志文件就已足
f够了。i
odb_flush_log_at_trx_commit
如果比起持久性而更在意性能,可以通过设置i
odb_flush_log_at_trx_commit的值来控制日志缓存被刷写到什么地方及刷写的频率。该参数可以设置为0,1,2,解释如下:0:buffer中的数据将以每秒一次的频率写入到logfile中,log且同时会进行文件系统到磁盘的同步操作,但是每个事务的提交并不会触发任何logbuffer到logfile的刷新或者文件系统到磁盘的刷新操作;1:在每次事务提交的时候将logbuffer中的数据都会写入到logfile,同时也会触发文件系统到磁盘的同步;2:事务提交会触发logbuffer到logfile的刷新,但并不会触发磁盘文件系统到磁盘的同步。此外,每秒会有一次文r
好听全球资料 返回顶部