python导入mysqldb_Python导入MySQLdb报错
摘要
> flask开发相关功能,在本地测试没有问题,但是放到线上环境却报错 `ImportError: libmysqlclient.so.16: cannot open shared object file: No such file or directory`
> 检查了下发现在 `/usr/lib64/mysql` 下面存在`libmysqlclient.so.18`文件(uanme -a 确认是64位系统)
---
## 解决过程
发现问题,不是自己遇到的也没有解决办法,那就网上查呗,发现大家的思路:
+ copy `/usr/lib64/mysql/libmysqlcient.so.18 `到`/usr/lib64/libmysqlclient.so.16`
+ 在`/usr/lib64/`下面建立libmysqlclient.so.16的软连接
+ 在`/etc/ld.so.conf.d/mysql-x86_64.conf`里面添加 /usr/lib64/mysql
等等思路都尝试之后发现还是还是没有解决。
继续思考:
环境中明明有`libmysqlclient.so.18` 为何要去找`libmysqlclient.so.16`,
那就先考虑`libmysqlclient.so.18`是从和而来。 在报错中提到了`_mysql.so` , locate 找到`_mysql.so` 发现是在`/root/.pyenv/versions/flask2/lib/python2.7/site-packages/_mysql.so`,好项目有什么问题,找`mysql.so` 发现如下:
```bash
root@pts/1 # locate mysql.so
/root/.pyenv/versions/2.7.12/envs/flask2/lib/python2.7/site-packages/_mysql.so
/usr/lib64/php/modules/mysql.so
/usr/lib64/php/modules/pdo_mysql.so
/usr/lib64/php-zts/modules/mysql.so
/usr/lib64/php-zts/modules/pdo_mysql.so
/var/lib/mysql/mysql.sock
```
猜想应该和和PHP有关系,想起来本地环境和线上环境安装的PHP不一致
本地的PHP是通过 `webtatic` 安装的,而服务器上面的是通过 `remi`安装的, 在本地执行`yum list |grep libmysql`:
```bash
[root@i-bskmtj6q ~]# yum list |grep libmysql
libmysqlclient16.x86_64 5.1.69-1.w6 webtatic
libmysqlclient16-devel.x86_64 5.1.69-1.w6 webtatic
```
发现libmysqlclient16 是来自于 `webstatic`, 故卸载之前通过remi安装的PHP,采用webstatic方式安装
```bash
## remove remi
yum remove php php-fpm php-mysqlnd php-common
## install from webstatic
yum install php56w php56w-mysql php56w-fpm php56w-common
```
最后验证导入 MySQLdb 没有报错,一切正常
---
## 附加:
上文中提到了 `webtatic` 和 `remi` 两个不同的安装源,具体的区别可以参考链接
Centos下YUM安装PHP的两种方式 [http://www.jianshu.com/p/2ff15676f902](http://www.jianshu.com/p/2ff15676f902)
---
----------------------------------------------***更多精彩请关注***-------------------------------------
![公众号: DailyJobOps](http://upload-images.jianshu.io/upload_images/1394001-cb23ed39087edab0.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/200)
python导入mysqldb_Python导入MySQLdb报错相关推荐
- python导入requests库一直报错原因总结_python pip 安装库文件报错:pip install ImportError: No module named _internal...
centos6,python3,通过pip安装pycurl出现报错提示 Centos6.7系统,python3.6.7,通过 pip 安装pycurl出现报错: __main__.Configurat ...
- Pycharm如何导入python文件,及出现报错解决办法
导入及解决报错 导入py文件 解决报错问题 https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 让这个可爱的宝藏女 ...
- JMeter 报告监听器导入.jtl结果文件报错解决方案
JMeter 报告监听器导入.jtl结果文件报错解决方案 by:授客 QQ:1033553122 1. 问题描述 把jmeter压测时生成的 .jtl结果文件导入监听器报告中,弹出如下错误提示 ...
- Eclipse中导入项目后js报错解决方法
Eclipse中导入项目后js报错的原因与解决方法 在我们将项目导入Eclipse后,配置好各种编译条件.加载好jar包.配置好tomcat后发现项目还是报错,(前提是项目本身并没有错误,而是我们在初 ...
- idea项目依赖导入失败_解决idea导入项目后依赖报错问题
1.在idea首页 Confige-->setting-->build,execution,deployment-->buildTool-->maven-->work o ...
- 在eclipse中导入工程后@Override报错
在eclipse中导入工程后@Overide报错 到入工程后,所有的@Override都报如下错误: Multiple markers at this line - The method ge ...
- 解决idea导入项目后依赖报错问题
解决idea导入项目后依赖报错问题 参考文章: (1)解决idea导入项目后依赖报错问题 (2)https://www.cnblogs.com/dayandday/p/10607195.html (3 ...
- 导入 sun.net.TelnetInputStream; 报错
// 对于导入 sun.net.TelnetInputStream; 报错 是权限不足 myeclise 默认不是使用sun 下面的额工具类 也可以自己建立一个 TelnetInputStream 继 ...
- 图解Myeclipse 导入Java Web项目报错的解决办法听语音
图解Myeclipse 导入Java Web项目报错的解决办法听语音 https://jingyan.baidu.com/article/046a7b3e953ef3f9c27fa93d.html
- Android之Android Studio三种方式导入外部资源 以及 报错处理
Android Studio三种方式导入外部资源 以及 报错处理 android studio提供了三种方式导入外部资源: 1. Library dependency – 在线添加.需联网下载 . 2 ...
最新文章
- Java的表白程序_java表白程序
- LiveVideoStackCon2021音视频技术大会北京站Day2
- git安装和初步使用
- linux6.0 安装教程,CentOS 6.0安装步骤
- 探索Windows Azure 监控和自动伸缩系列1 - 连接中国区Azure
- 配置管理-CMMI的五个等级
- Linux配置jdk
- Google 已将“xxxx”标记为恶意扩展程序并阻止安装,解决方案
- oracle数据库影响网络延时,磁盘排序对Oracle数据库性能的影响-通信/网络-与非网...
- 毕设/私活/必备,一个挣钱的标准开源前后端分离【springboot+vue+redis+Spring Security】脚手架--若依框架
- SQL数据库练习题以及答案(46例题)
- sqlite 多条件查询
- 开源视频云转码 m3u8_8种开源视频游戏
- 立志让国内用户不再依赖国外DLP技术 天空卫士发布UCS新品
- C语言中getch()的用法
- 深度报道 | 5G兵临城下:AIoT将面临哪些变革和挑战?
- 华为OD机试题:黑板上的数涂颜色
- Wannafly挑战赛20-染色
- 十、Java接口——特殊的抽象类
- 论文阅读:Pixel-level Extrinsic Self Calibration of High Resolution LiDAR and Camera
热门文章
- C#属性的声明和使用演示源码片段
- 一次性搞懂JavaScript正则表达式之语法
- 一张图理解JS的原型(prototype、_proto_、constructor的三角关系)
- docker 磁盘问题:device or resource busy
- OpenCart 之 CSV 格式商品导入 – 如何导入商品主图片和附加图片?
- 同一个闭区间上有界变差函数的和与积都是有界变差函数
- 智能安全实验室-Defendio杀马2.4.0.420-实时防护-内存防护、新浏览器导航界面...
- SUN服务器清除所有报错信息,SUN服务器可能遇到的问题总结.doc
- 智能情绪分析技术_石化缘推荐:炼化企业智能机器人巡检技术应用前景分析!...
- opencv拖动进度条_OpenCV GUI基本操作,回调函数,进度条,裁剪图像等-阿里云开发者社区...