2016-09-05 11 views
0

私は、SQLアルケミーを使用してmysql dbに接続するための簡単なテストコードを実行しようとしています。 コードは次のとおりです。sqlalchemyを使用してmysqlに接続できません。ライブラリがロードされていないエラー

from sqlalchemy import (create_engine, Table, Column, Integer, String, MetaData) 
import settings 
import sys 
try: 
    db = create_engine('mysql://daniel:[email protected]/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 

私はこのエラーを解決するには手がかりがありません。

ありがとうございます!

答えて

1

また、SQLAlchemyにいくつかの問題がありました。私はcreate_engineのlocalhostを127.0.0.1:portに変更しました。また、pymysqlも使用しなければなりませんでした。これで働くことになった:

engine = create_engine('mysql+pymysql://user:[email protected]:port/db')

pymysqlはピップを介してインストールされています。

0

あなたはPythonを使用しているので、mysqlにmysqldbを追加しています。以下のコードを試してみてください。

try: 
    db = create_engine('mysql+mysqldb://daniel:[email protected]/test') 
    db.connect() 
except: 
    print('opps ', sys.exc_info()[1]) 
関連する問題