Flask-SQLAlchemy连接mysql的大坑
最近看了看Flask,可是网上的教程全是用SQLite的,自己连接MySQL的时候,把connect URL修改成MySQL的样子,总是不成功。踩了一天的坑之后终于解决了。
MySQL-Python
连接MySQL的话必须要装这个库,通常情况下使用pip install
就可以了。但是如果在windows上,需要额外安装MySQL Connector 6.0.2 c,必须是这个版本。根据你的python版本选择32bit or 64bit,virtualenv中python是32bit,也需要使用32bit的Connector。
Connector的安装路径建议选择默认的,可以把MySQL-Python这个包下回来看看,里面的
site.cfg
文件里写死了include的路径。(还给了个stackoverflow的链接XD)
pyMySQL
网上还看到也有人推荐使用这个库,但是我尝试安装了这个,并将connect URL改成了mysql+pymysql://user:pass@localhost/database
后,执行create_all()后无报错,也没有建表。因为同样需要安装MySQL-Python这个类似于中间件的东西,不然Python是无法和MySQL交流的。
难怪网上都用SQLite做教程,(╯‵□′)╯︵┻━┻。。。因为简单不出错。。。┬—┬ノ('-'ノ)