- 主题:3.12好多坑啊
升级python到3.12,django的mysql模块出错,安装还得要libmysql-dev
idea出错,还得升级idea到2024.1
各种坑
--
FROM 113.84.209.*
运维说django老版本有cve漏洞,让我升到5.0.7,然后这个需要3.10
我从3.9升上来的,之前的pymysql就够用了,现在要整mysqlclient
发现3.10就需要了,艸
弄个docker环境还得整build essential
【 在 JulyClyde 的大作中提到: 】
: 不是从来都需要libmysqlclient-dev么?
: 和3.12有啥关系呢?
--
修改:iwannabe FROM 119.139.197.*
FROM 119.139.197.*
就是docker让我很纠结,pip install mysqlclient 还得装build essential
【 在 prettyPIG 的大作中提到: 】
: 所以说docker很伟大
--
FROM 119.139.197.*
django.db.utils.NotSupportedError: MySQL 8.0.11 or later is required (found
5.7.44).
艸
【 在 iwannabe 的大作中提到: 】
: 运维说django老版本有cve漏洞,让我升到5.0.7,然后这个需要3.10
: 我从3.9升上来的,之前的pymysql就够用了,现在要整mysqlclient
: 发现3.10就需要了,艸
: ...................
--
FROM 119.139.197.*
你错了,python 3.9里的pymysql用的是python自己实现的mysql协议
后面3.10就改成调用libmariadb,导致需要装native的mysql lib
【 在 seablue 的大作中提到: 】
: 这是你用的那个linux发行版升级机制和包管理器的坑,跟python3.12没关系。
--
FROM 27.38.197.*
今天再研究了一下,是django 升级到5.0.7,缺省的driver是mysqlclient,而不是
pymysql
要用pymysql,需要手工指定 "driver": "pymysql"
【 在 adoal 的大作中提到: 】
: 十有八九是不同packaging方式混用导致的
--
FROM 27.38.197.*
我也不想升啊,漏洞扫描非得逼你升
【 在 happymarried 的大作中提到: 】
: 我还需要连老的mysql,只能用Django 3.1以下,3.2都不能升级。
--
FROM 183.46.67.*
还有两个坑,3.12和idea/pycharm不兼容,调试会报错
Unable to load extension pydevd_plugins.extensions.types.pydevd_plugin_pandas_
types
和celery不兼容
AttributeError: 'cached_property' object has no attribute 'lock'
然后celery的eventlet和dnspython 不兼容,导致连数据库和redis解析hostname失败
这两天近搞这些坑了
后面回退到3.10
【 在 iwannabe 的大作中提到: 】
: 升级python到3.12,django的mysql模块出错,安装还得要libmysql-dev
: idea出错,还得升级idea到2024.1
: 各种坑
: ...................
--
FROM 183.46.67.*