/ Users / apple / myapp2 / env / bin / python3 /Users/apple/myapp2/testmysql2/app.py
回溯(最近通话最近):
中的文件“ /Users/apple/myapp2/testmysql2/app.py”,第2行
flask_mysqldb导入MySQL
的文件“ /Users/apple/myapp2/env/lib/python3.7/site-packages/flask_mysqldb/init.py”,第1行
导入MySQLdb
在
中的文件“ /Users/apple/myapp2/env/lib/python3.7/site-packages/MySQLdb/init.py”中,第18行
来自。导入_mysql
ImportError:dlopen(/Users/apple/myapp2/env/lib/python3.7/site-packages/MySQLdb/_mysql.cpython-37m-darwin.so,2):找不到符号:_syslog $ DARWIN_EXTSN
引用自:/usr/local/mysql/lib/libcrypto.1.0.0.dylib(为Mac OS X 10.13构建)
预期位于:/usr/lib/libSystem.B.dylib
在/usr/local/mysql/lib/libcrypto.1.0.0.dylib
以退出代码1完成的过程
其他信息:
(env)(基本)MacBook-Air:testmysql2 apple $ otool -L /Users/apple/myapp2/env/lib/python3.7/site-packages/MySQLdb/_mysql.cpython-37m-darwin.so < br />
/Users/apple/myapp2/env/lib/python3.7/site-packages/MySQLdb/_mysql.cpython-37m-darwin.so:
/usr/local/mysql/lib/libmysqlclient.21.dylib(兼容版本21.0.0,当前版本21.0.0)
/usr/local/mysql/lib/libssl.1.0.0.dylib(兼容版本1.0.0,当前版本1.0.0)
/usr/local/mysql/lib/libcrypto.1.0.0.dylib(兼容版本1.0.0,当前版本1.0.0)
/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1238.60.2)
from flask import Flask, render_template
from flask_mysqldb import MySQL
app = Flask(__name__)
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = 'testuser'
app.config['MYSQL_PASSWORD'] = 'testpw'
app.config['MYSQL_DB'] = 'formdb'
mysql = MYSQL(app)
我想将mysql连接到flask应用程序,但是出现这样的错误,我不知道如何解决。
那是什么意思
预期在:/usr/lib/libSystem.B.dylib
在/usr/local/mysql/lib/libcrypto.1.0.0.dylib
?
我的Mac是Mac OS X 10.12
我还将寻找另一种将mysql连接到flask的方法,这对我来说解决问题太困难了:)
这是我第一次问问题,也许有一些格式问题,不清楚阅读。
答案 0 :(得分:0)
安装pymysql。并在数据库字符串uri中包含pymysql,如下所示:
'pymysql://root:root@localhost/your_database?charset=utf8mb4'
它将起作用,我也遇到了同样的问题,这解决了我的问题