温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mysql 5.5参数--innodb_read(write)_io_threads

发布时间:2020-08-09 13:20:51 来源:ITPUB博客 阅读:529 作者:Steven1981 栏目:MySQL数据库
# 在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版本的更快成熟;

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI