Mysql常见问题集锦
Posted linuxws
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql常见问题集锦相关的知识,希望对你有一定的参考价值。
缺少libstdc++.so.6库的原因及解决办法
解决办法:
一、安装库
1. 查看哪个安装包包含该库:yum provides libstdc++.so.6
libstdc++-4.4.7-4.el6.i686
2. 根据提示安装 libstdc++-4.4.7-4.el6.i686
yum install libstdc++-4.4.7-4.el6.i686
报错:
--> Finished Dependency Resolution
Error: Protected multilib versions: libstdc++-4.4.7-4.el6.i686 != libstdc++-4.4.7-3.el6.x86_64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
2.1 解决办法:
yum update libstdc++-4.4.7-3.el6.x86_64
然后再执行步骤2的命令
解决方法2:
系统中缺少一个lib库 libz.so.1文件,使用yum安装会自动找到相关的rpm包
yum install libstdc++.so.6
错误总结
Protected multilib versions 一般这种问题一般会在64位系统中安装32位系统时出现,同一个软件,不同版本造成的冲突。
错误信息中包含这条信息表示:
yum检测出我们安装的库在 zlib-1.2.3-29.el6.i686 和 zlib-1.2.3-27.el6.x86_64两个包中都存在(有冲突)
yum -y install libstdc++.so.6 --setopt=protected_multilib=false
总结:这个参数的解决64位操作系统上安装32位软件包缺少lib库依赖的时候非常有用,因为64位操作系统默认都会安装64位的lib库到 /lib64目录下,而32位的应用程序需要的lib库在/lib目录下,lib库文件名又都是相同的,安装时就经常出现上面冲突的问题。
https://my.oschina.net/lionel45/blog/509476
二、包含这个库的软件已经安装,但是找不到库文件
方法1:
# vim /etc/ld.so.conf //在新的一行中加入库文件所在目录
/usr/lib
# ldconfig //更新/etc/ld.so.cache文件
- 1
- 2
- 3
- 4
方法2:
1.将用户用到的库统一放到一个目录,如 /usr/loca/lib
# cp libXXX.so.X /usr/loca/lib/
2.向库配置文件中,写入库文件所在目录
# vim /etc/ld.so.conf.d/usr-libs.conf
/usr/local/lib
3.更新/etc/ld.so.cache文件
# ldconfig
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
这里采用第二种办法,它更为方便,对于原系统的改动也最小。而/etc/ld.so.conf的文件内容是include /etc/ld.so.conf.d/*.conf,所以在/etc/ld.so.conf.d目录下,加入任何以.conf为后缀的文件,都能被ld识别。
ld.so.cache的更新是递增式的,就像PATH系统环境变量一样,不是从头重新建立,而是向上累加。只有重新开机,系统才从零开始建立ld.so.cache文件。
以上是关于Mysql常见问题集锦的主要内容,如果未能解决你的问题,请参考以下文章