簡體   English   中英

無法使用sqlalchemy連接到mysql。 庫未加載錯誤

[英]Can't connect to mysql using sqlalchemy. Library not loaded error

我試圖運行一個簡單的測試代碼,以使用sql alchemy連接mysql db。 代碼如下:

from sqlalchemy import (create_engine, Table, Column, Integer, String, MetaData)
import settings
import sys
try:
    db = create_engine('mysql://daniel:dani@localhost/test')
    db.connect()
except:
    print('opps ', sys.exc_info()[1])

我收到以下錯誤:

dlopen(//anaconda/lib/python3.5/site-packages/_mysql.cpython-35m-darwin.so, 2): Library not loaded: libssl.1.0.0.dylib
Referenced from: //anaconda/lib/python3.5/site-packages/_mysql.cpython-35m-darwin.so
  Reason: image not found
[Finished in 1.4s]

但是在終端上運行:

locate libssl.1.0.0.dylib

我得到:

/Applications/Dtella.app/Contents/Frameworks/libssl.1.0.0.dylib
/Applications/XAMPP/xamppfiles/lib/libssl.1.0.0.dylib
/Users/dpereira14/anaconda/envs/dato-env/lib/libssl.1.0.0.dylib
/Users/dpereira14/anaconda/lib/libssl.1.0.0.dylib
/Users/dpereira14/anaconda/pkgs/openssl-1.0.1k-1/lib/libssl.1.0.0.dylib
/anaconda/lib/libssl.1.0.0.dylib
/anaconda/pkgs/openssl-1.0.2g-0/lib/libssl.1.0.0.dylib
/opt/local/lib/libssl.1.0.0.dylib
/usr/local/Cellar/openssl/1.0.1j/lib/libssl.1.0.0.dylib

我不知道如何解決此錯誤。

謝謝!

我在使用MySQL的SQLAlchemy時也遇到了一些問題,我將create_engine中的localhost更改為127.0.0.1:port,還不得不使用pymysql。 最終完成了以下工作:

engine = create_engine('mysql+pymysql://user:password@127.0.0.1:port/db')

pymysql是通過pip安裝的。

您正在使用python,因此已在mysql中添加了mysqldb。 試試下面的代碼。

try:
    db = create_engine('mysql+mysqldb://daniel:dani@localhost/test')
    db.connect()
except:
    print('opps ', sys.exc_info()[1])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM