mysql5.5参数--innodb_read(write)_io_threads

# 在5.1版本上,这FILE_IO这一块MySQL只用了4个线程来处理IO;
# 但在5.5上,随着对多线程的更强支持;INNODB也加强了对IO读写线程的支持;更多发挥多线程的优势 ;
# IO线程默认增加到了10个;(配太多也没用,因为IO能力有限,需要配合特殊机型)
# 其实这个在5.5.0就已经增强了,不过在这里讲也不晚;
[@more@]


### 5.1
# innodb_file_io_threads
# The number of file I/O threads in InnoDB.
# Normally, this should be left at the default value of 4, but disk I/O on Windows may benefit from a larger number.
# On Unix, increasing the number has no effect; InnoDB always uses the default value.

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网络空间、营销软件、网站建设、中山网站维护、网站推广。

### 5.5
innodb_read_io_threads=4 # (default)
innodb_write_io_threads=4 # (default)

--------------------------------------------
root@127.0.0.1 : (none) 10:46:59> show variables like 'innodb_%io%threads';
+-------------------------+-------+
| Variable_name | Value |
+-------------------------+-------+
| innodb_read_io_threads | 4 |
| innodb_write_io_threads | 4 |
+-------------------------+-------+
2 rows in set (0.00 sec)

root@127.0.0.1 : (none) 10:47:09> select version();
+--------------+
| version() |
+--------------+
| 5.5.7-rc-log |
+--------------+
1 row in set (0.00 sec)


##### show engine innodb status on V 5.5

###
FILE I/O
--------
I/O thread 0 state: waiting for completed aio requests (insert buffer thread)
I/O thread 1 state: waiting for completed aio requests (log thread)
I/O thread 2 state: waiting for completed aio requests (read thread)
I/O thread 3 state: waiting for completed aio requests (read thread)
I/O thread 4 state: waiting for completed aio requests (read thread)
I/O thread 5 state: waiting for completed aio requests (read thread)
I/O thread 6 state: waiting for completed aio requests (write thread)
I/O thread 7 state: waiting for completed aio requests (write thread)
I/O thread 8 state: waiting for completed aio requests (write thread)
I/O thread 9 state: waiting for completed aio requests (write thread)
Pending normal aio reads: 0 [0, 0, 0, 0] , aio writes: 0 [0, 0, 0, 0] ,
ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0
Pending flushes (fsync) log: 0; buffer pool: 0
153 OS file reads, 3 OS file writes, 3 OS fsyncs
0.00 reads/s, 0 avg bytes/read, 0.00 writes/s, 0.00 fsyncs/s

##### show engine innodb status on V5.1

--------
FILE I/O
--------
I/O thread 0 state: waiting for i/o request (insert buffer thread)
I/O thread 1 state: waiting for i/o request (log thread)
I/O thread 2 state: waiting for i/o request (read thread)
I/O thread 3 state: waiting for i/o request (write thread)
Pending normal aio reads: 0, aio writes: 0,
ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0
Pending flushes (fsync) log: 0; buffer pool: 0
24 OS file reads, 138506 OS file writes, 6249 OS fsyncs
0.00 reads/s, 0 avg bytes/read, 0.00 writes/s, 0.00 fsyncs/s


#我们发现,
#在5.1的4个FILE_iO 线程包括:
insert buffer thread
log thread
read thread
write thread

#而在5.5, 总共有10个FILE_IO线程
(insert buffer thread) * 1
(log thread) * 1
(read thread) * 4
(write thread) * 4

有了更多读写线程的支持,也相应地增加了INNODB更大的并发能力;
期待5.5版本的更快成熟;


网站栏目:mysql5.5参数--innodb_read(write)_io_threads
文章网址:http://pwwzsj.com/article/ihcdii.html