root@master:/usr/local/mysql# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
弹出一个错:
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
我心想既然缺乏libaio, 那就安装一个,于是我就如下操作:
root@master:/usr/local# apt-get install -y libaio
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable tolocate package libaio
报错的意思是apt-get的安装源中没有libaio这个包,于是我在百度上搜啊搜啊,看了很多文章博客,我又下载了一个rpm包,继续安装,想换一个安装方式看行不行。
root@master:/usr/local# rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm
rpm: RPM should not be used directlyinstall RPM packages, use Alien instead!rpm: However assuming you know what you are doing...
warning: libaio-0.3.109-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
error: Failed dependencies:/sbin/ldconfig is needed by libaio-0.3.109-13.el7.x86_64
rtld(GNU_HASH) is needed by libaio-0.3.109-13.el7.x86_64
上面报错的意思是缺乏ldconfig命令,还缺一个rtld, 可是我看ldconfig命令是存在的呀,想来想去,还是没辙。看来这种通过rpm的安装方式,也不大行。
于是我又返回去看apt-get的安装方式,试图解决源中没有包的问题,我尝试了改变apt-get的安装包来源,有直接修改源网站的,有通过更改Software & Updates的方式的,最终证明,毫无作用。
就这样,忙碌的工作中,时间过去了两周,我想我应该直接去看一下mysql的官方文档上,有没有解决这个问题的信息。
没想到mysql官方网站的安装文档的第一个注意事项就是怎么解决这个问题!!!
下面是截图:
不仅如此,解决问题的方式也让我汗颜。原来不是没有libaio这个源,而是这个包的名字叫"libaio1", 服气了,服气了。
最后总结经验教训:
1. 应该首先去看官方文档,而不是优先看别人的博客。
2. apt-get的用法我应该好好学学,补补基础知识。
最后最后, 我想说的是,对于不求甚解的同学来说,其实在ubuntu上安装mysql有个更简单的办法, 那就是直接使用apt-get安装。
具体怎么操作可以参考下面的博客: