Ubuntu 16.04로 업그레이드되어 MySQL-python 의존성이 끊어졌습니다.
방금 Ubuntu 설치를 16.04로 업그레이드했는데 MySQL-python 패키지의 mysql 의존성이 깨진 것 같습니다.
오류 메시지는 다음과 같습니다.
File "/opt/monitorenv/local/lib/python2.7/site-packages/sqlalchemy/engine/__init__.py", line 386, in create_engine
return strategy.create(*args, **kwargs)
File "/opt/monitorenv/local/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 75, in create
dbapi = dialect_cls.dbapi(**dbapi_args)
File "/opt/monitorenv/local/lib/python2.7/site-packages/sqlalchemy/dialects/mysql/mysqldb.py", line 92, in dbapi
return __import__('MySQLdb')
File "/opt/monitorenv/local/lib/python2.7/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
따라서 기본적으로 import_mysql은 다음을 찾습니다.so
Ubuntu 16.04에서는 존재하지 않는 파일을 가지고 있습니다.libmysqlclient20
설치된.그리고 libmysqlclient18은 사용할 수 없습니다.내가 아는 한(또는 적어도 나는) 파이썬 라이브러리가 최신 버전으로 최신 상태라고 생각합니다.
(달려보았습니다.pip install --upgrade mysql-python
최신 상태임을 나타냅니다.
무슨 제안이라도 있으신가요?
Largaroth에게 감사드립니다.사용하는 경우mysqlclient
Ubuntu 16.04에서 다음 오류가 발생합니다. ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
수정할 수 있습니다.
sudo -H pip uninstall mysqlclient
sudo -H pip install --no-binary mysqlclient mysqlclient
저는 결국 제 문제에 대한 해결책을 찾았습니다.pip install --no-binary MySQL-python MySQL-python
이 스레드에 명시된 바와 같이: Python's MySQLdb가 홈브루 MySQL로 libmysqlclient.dylib을 찾을 수 없습니다.
저도 같은 문제가 있었습니다.MySQL-python을 제거하고 다시 설치했습니다.
pip uninstall MySQL-python
pip install MySQL-python
스트레치로 업데이트할 때 이 문제가 있었습니다.그것을 고치기 위해 요구 사항을 업데이트 했습니다.txt:
mysqlclient==1.4.2.post1
따라서 수동으로 업데이트하거나 pip install --upgrade mysqlclient
문제는 예전 운영체제의 휠하우스를 사용하고 있다는 것이었습니다.
패키지를 제거/설치하거나 휠하우스를 업데이트하면 문제가 해결되었습니다.
문서에서:
http://mysql-python.sourceforge.net/FAQ.html#importerror
즉, MySQLdb의 한 버전에 대해 컴파일된 MySQLdb 버전이 있으며, 이제 다른 버전에 대해 실행하려고 합니다.공유 라이브러리 버전은 주요 릴리스 간에 변경되는 경향이 있습니다.
해결책: MySQLdb를 재구축하거나, MySQL과 일치하는 버전을 가져옵니다.
단계:
search mysql path
어떤 mysql
O/p : /opt/mysql/
usr/lib에 대한 심볼릭 링크 생성
sudoln -s /opt/ mysql/lib/mysqlclient.so .20/usr/lib
참고: mysqlclient.so .20은 귀하의 버전과 동일합니다.
python 3.6에 이 문제가 있었습니다.파이썬 3.5 환경을 사용했을 때는 잘 작동했습니다.
가상 환경에서 django 2.2.7과 Ubuntu 19.10을 사용하여 이 문제를 해결했습니다.
pip3 mysqlclient 제거
pip3 install mysqlclient
언급URL : https://stackoverflow.com/questions/36796167/upgraded-to-ubuntu-16-04-now-mysql-python-dependencies-are-broken
'source' 카테고리의 다른 글
MySQL 구성 파일을 다시 시작하지 않고 새로 고치려면 어떻게 해야 합니까? (0) | 2023.10.09 |
---|---|
봄 부팅 앱에서 BIRT (0) | 2023.10.09 |
구분 기호를 제거하지 않은 Python split() (0) | 2023.10.09 |
sealing violation: 패키지 oracle.net .ns가 sealed되었습니다. (0) | 2023.10.09 |
x86에서 SHA(SHA1/2/256/512) 인코딩을 가속화하기 위한 지침이 있습니까? (0) | 2023.10.09 |