The default value of innodb_read_io_threads
and innodb_write_io_threads
is 4. How do you check if your server load needs a higher number of threads?
As I regularly check show engine innodb status \G
, there is no traceable activity:
--------
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 32 state: waiting for completed aio requests (write thread)
I/O thread 33 state: waiting for completed aio requests (write thread)
Pending normal aio reads: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] , aio writes: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] ,
Furthermore, what is the downside of increasing it to the maximum value of 64? If not using, they are harmless idle threads.