提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
华为欧拉openEuler22.03安装mysql8.0.27时遇到的坑
前言
提示:这里可以添加本文要记录的大概内容:
第一次写文档,不足之处请指正。
华为欧拉新版本出来了,就想着安装下看看什么样子,于是就找了台电脑(部门已经报废的电脑,只是账面资产值为0,硬件还是能用的)给装上了。但没有桌面,只有命令行,试着装了深度的桌面,运行还算顺畅。完后就想着装个数据库看看吧,结果就遇到了好多坑。
提示:以下是本篇文章正文内容,下面案例可供参考
一、tar.gz版本安装自己电脑上有tar.gz版本的mysql,也就不用在网上下载了。解压、配置,完后就是启动,但试了多次也没有启动成功,在网上找了好多方法也是不行,最后只好放弃。
二、yum安装yum安装也是简单方便,但安装后同样的是启动不了,还是放弃。
三.rpm安装上面两种方法都没有安装成功,那就用rpm文件来安装吧。在安装的过程中提示缺少libssl.so.10依赖,当时也没在意,直接就–nodeps过去了。所有程序安装完毕后,在启动时报错了,怎么也启动不了,看了日志发现有如下提示:
4月 22 16:21:02 localhost.localdomain mysqld_pre_systemd[61419]: /usr/bin/my_print_defaults: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such fil> 4月 22 16:21:02 localhost.localdomain mysqld_pre_systemd[61425]: /usr/bin/my_print_defaults: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such fil> 4月 22 16:21:02 localhost.localdomain mysqld_pre_systemd[61431]: /usr/bin/my_print_defaults: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such fil> 4月 22 16:21:03 localhost.localdomain mysqld_pre_systemd[61452]: /usr/sbin/mysqld: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or direc> 4月 22 16:21:03 localhost.localdomain mysqld[61456]: /usr/sbin/mysqld: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory 4月 22 16:21:03 localhost.localdomain systemd[1]: mysqld.service: Main process exited, code=exited, status=127/n/a
通过命令ldd /usr/bin/my_print_defaults发现还是缺少依赖。
[root@localhost tool]# ldd /usr/bin/my_print_defaults
linux-vdso.so.1 (0x00007ffe161c1000)
libpthread.so.0 => /usr/lib64/libpthread.so.0 (0x00007f16c477c000)
librt.so.1 => /usr/lib64/librt.so.1 (0x00007f16c4777000)
libssl.so.10 => not found
libcrypto.so.10 => not found
libdl.so.2 => /usr/lib64/libdl.so.2 (0x00007f16c4772000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f16c458c000)
libm.so.6 => /usr/lib64/libm.so.6 (0x00007f16c44ae000)
libgcc_s.so.1 => /usr/lib64/libgcc_s.so.1 (0x00007f16c4494000)
libc.so.6 => /usr/lib64/libc.so.6 (0x00007f16c429d000)
/lib64/ld-linux-x86-64.so.2 (0x00007f16c479c000)
但是从安装盘里没有找到安装包,只好从CentOS7服务器上把libssl.so.10 、 libcrypto.so.10 这两个 文件拷贝到/usr/lib64/目录里, 这样就可以正常启动mysql了。
在启动后输入命令:mysql -u root -p 又报错了,发现还是少了依赖
[root@localhost tool]# mysql -u root -p mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory [root@localhost tool]# mysql -uroot -p mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
还是老办法从CentOS7的服务器上把文件拷贝过来,最后mysql终于可以正常登录了。
总结
虽然系统提示缺少文件,实际是缺少提示版本的文件,欧拉的/usr/lib64/目录里是有高版本的文件,安装mysql所需的版本低,我的水平有限,也不知道怎么引用,只能是从别的系统把文件拷贝过来了。openEuler是个新系统,好多东西都需要去探索,希望国产操作系统早日成长起来。



