创建 多个 MySQL docker 出现错误时
风来了.fox
……
140505 16:05:59 InnoDB: Using Linux native AIO
140505 16:05:59 InnoDB: Warning: io_setup() failed with EAGAIN. Will make 5 attempts before giving up.
InnoDB: Warning: io_setup() attempt 1 failed.
InnoDB: Warning: io_setup() attempt 2 failed.
InnoDB: Warning: io_setup() attempt 3 failed.
InnoDB: Warning: io_setup() attempt 4 failed.
InnoDB: Warning: io_setup() attempt 5 failed.
140505 16:06:02 InnoDB: Error: io_setup() failed with EAGAIN after 5 attempts.
InnoDB: You can disable Linux Native AIO by setting innodb_use_native_aio = 0 in my.cnf
140505 16:06:02 InnoDB: Fatal error: cannot initialize AIO sub-system
140505 16:06:02 [ERROR] Plugin ‘InnoDB’ init function returned error.
140505 16:06:02 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed.
140505 16:06:02 [ERROR] Unknown/unsupported storage engine: InnoDB
解决方案:
1.先进入 mysql (已启动的)docker 中,执行如下命令
这里使用的mysql:5.6.31 docker ,如果配置文件地址不一样请自行更改
echo "innodb_use_native_aio = 0" >> /etc/mysql/my.cnf
所有的mysql docker 都要改
2.把这批改完的mysql docker 关闭
3.启动 新创建 mysql docker, 按 1 的方法更改,如果还是无法启动,把其他的mysql docker 都关闭,就可以启动了,启动了,还是要加入 1 的配置