当前位置:网站首页>centos6.5 php+mysql mysql库找不到
centos6.5 php+mysql mysql库找不到
2022-06-28 12:39:00 【51CTO】
前言
近期在做老系统迁移, 发现一堆老古董,centos6 + php-5.4.39 还有一堆pho的扩展, 注定过程不会简单。前提没办法升级, 只能做维护性迁移至容器。
问题:
遇到问题, php不能发现mysql库
报错:

查看模块,没有发现mysql库加载:

查看mysql可以已经被安装:


尝试解决,未解决:
只能查报错的原因,网上给出的答案,比较多的是指向openssl版本低不兼容。查看openssl版本, 大版本相同, 小版本比原系统高, 已经无法降级至原来的版本, 只能手动编译openssl。(未解决问题, 可以不看)
参照:
openssl-1.0.1e 下载地址
https://www.openssl.org/source/old/1.0.1/openssl-1.0.1e.tar.gz
生成
libssl.so.1.0.0
libcrypto.so.1.0.0
将两个文件拷贝到 /usr/lib64
创建软链接(ln源就是上面查出的对应版本的库文件):
然后再次验证。 php -m | grep mysql仍然未发现库 -。- 个人直觉,openssl小版本不至于会导致库加载失败, 应该是其他的问题导致的。
再次尝试解决,暴力解决:
打不过怎么办, 就去加入呗
先验证下是lib库的问题导致这个问题出现的。
道理很简单,把整个lib64库拿过去,然后重新加载,看问题是否解决:
再次检查,发现能够识别mysql库, 大功告成,理论上解决问题;

定位解决问题:
理论上 上面已经解决问题了, 但是不甘心,就是欠
第一》 真实原因不知道是为什么
第二》可以将整个lib目录同步过来, 但是放在容器里面有点大,违背容器轻量化的初衷
那就继续暴力查找:
既然是库的问题导致的, 找到库是哪个就行了。这玩意简单,弄个for循环自己跑呗:
如愿以偿找到这个mysql库的问题。然后在分析, 是哪个包安装的, 差异是什么
看起开比较明显了,这个mysql-libs 安装的不同。
至于原因:我重新安装了一下mysql-libs,输出如下:

mysql-libs版本也进行了升级,老版本的rpm包已经被替换了。
最后问题解决办法, 自然是没办法安装mysql-libs这个库, 只能是把旧的mysql-libs安装的库文件 add进入容器内, 完美解决。
边栏推荐
- 最新汇总!30省份公布2022高考分数线
- Unity加载设置:Application.backgroundLoadingPriority
- 【Unity编辑器扩展基础】、GUILayout
- Wechat authorized login
- Beginner level of attack and defense World Hello_ pwn
- Unity Editor Extension Foundation, GUI
- JS duration and asynchronous function promise
- 从SimpleKV到Redis
- ASP. NET CORE Study09
- What is data compliance? How to achieve data compliance?
猜你喜欢

ASP. NET CORE Study09

ASP.NET CORE Study04

已知两个点和中间一个比例的点,求该点坐标

In less than an hour, apple destroyed 15 startups

ASP. NET CORE Study05

分页样式 flex设置成在尾部显示(即使页数加长 也不会因为在末尾而换行)
思源官方付费同步使用指南

ASP. NET CORE Study04

Bytev builds a dynamic digital twin network security platform -- helping network security development

Namespace and scope
随机推荐
【Unity编辑器扩展基础】、GUILayout
Levels – virtual engine scene production "suggestions collection"
ASP.NET CORE Study06
【Unity编辑器扩展实践】、查找所有引用该图片的预制体
Hundreds of lines of code to implement a JSON parser
JS duration and asynchronous function promise
多维度监控:智能监控的数据基础
从SimpleKV到Redis
Two writing methods of JNI function
Namespace and scope
张同学回应首场直播带货
Sha256 encryption tool class
Jerry's wif interferes with Bluetooth [chapter]
杰理之SPI1外挂FLASH录音修改【篇】
[vi/vim] basic usage and command summary
杰理之wif 干扰蓝牙【篇】
【编解码】从零开始写H264解码器(1) 总纲
unity发布 webgl在手机端 inputfield唤醒键盘输入
Enterprise source code confidentiality scheme sharing
How to get a generic type