flask mysql connect error on Mac OSX 10.12.6
/ 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
在第18行的" /Users/apple/myapp2/env/lib/python3.7/site-packages/MySQLdb/init.py"文件中
来自。导入_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
/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)
1 2 3 4 5 6 7 8 9 10 | 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的方法,这对我来说解决问题太困难了:)
这是我第一次问问题,也许有一些格式问题,不清楚阅读。
安装pymysql。 并在数据库字符串uri中包含pymysql,如下所示:
1 | 'pymysql://root:root@localhost/your_database?charset=utf8mb4' |
它将起作用,我也遇到了相同的问题,这解决了我的问题