[原创] mysql-mxj/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 错误的解决办法


环境:Ubuntu 12.10 64位
这个错误是我在一个Java的单元测试中遇到的,因为该unit test使用了Embedded MySQL。

『1』确定问题
它既然提示找不到 libaio.so.1,那我就看一下我是否真的没安装:

[codelast@ lib]$ dpkg -l | grep libaio
ii  libaio-dev                                0.3.109-2ubuntu1                           amd64        Linux kernel AIO access library - development files
ii  libaio1:amd64                             0.3.109-2ubuntu1                           amd64        Linux kernel AIO access library - shared library

所以,我是已经安装了的。
PS:如果你没安装,可以先查询一下软件包名:

[codelast@ lib]$ apt-cache search libaio
libaio-dev - Linux kernel AIO access library - development files
libaio1 - Linux kernel AIO access library - shared library
libaio1-dbg - Linux kernel AIO access library - debugging symbols

然后安装:

sudo apt-get install libaio-dev libaio1

文章来源:http://www.codelast.com/
『2』解决问题
这篇文章里提到了这个错误,大家可以看看。里面说到了,Embedded MySQL需要使用32位的libaio,因此,我已经安装上的64位的libaio是没用的。于是我“投机取巧”地到另一台服务器上找到了一个32位的 libaio.so.1.0.1,然后把它运行unit test的机器上的 /usr/lib/ 目录下,然后做一个软链接:

sudo ln -s libaio.so.1.0.1 libaio.so.1

然后再运行unit test,问题解决了。

文章来源:https://www.codelast.com/
➤➤ 版权声明 ➤➤ 
转载需注明出处:codelast.com 
感谢关注我的微信公众号(微信扫一扫):

wechat qrcode of codelast

发表评论