falsk-sqlalchemy 连接数据库出现 No module named ‘MySQLdb‘(笔记自用)
一:連接參數
sqlalchemy使用 create_engine() 函數從URL生成一個數據庫鏈接對象,URL遵循 RFC-1738標準。我也不懂。大概就是要有用戶名,密碼,地址,端口,數據庫名,還有一些可選參數。一個標準的鏈接URL是這樣的:
dialect+driver://username:password@host:port/database1.dialect:是數據庫類型,大概包括:sqlite, mysql, postgresql, oracle, or mssql.
2.driver:是使用的數據庫API,驅動,連接包,隨便叫什么吧。
3.username,用戶名
4.password,密碼
5.host,網絡地址,可以用ip,域名,計算機名,當然是你能訪問到的。
6.port,數據庫端口。
7.databas,數據庫名。
其實這些也就dialect和dirver需要解釋。
二、連接mysql(mariadb)
sqlalchemy默認使用mysql-python作為鏈接驅動,既default模式
選哪種驅動,就裝哪個包。
1,default默認鏈接方式
engine = create_engine(‘mysql://scott:tiger@localhost/foo’)
2,# mysql-python,聲明使用mysql-python驅動
engine = create_engine(‘mysql+mysqldb://scott:tiger@localhost/foo’)
3,MySQL-connector-python 聲明使用MySQL-connector-python驅動(推薦使用)
engine = create_engine(‘mysql+mysqlconnector://scott:tiger@localhost/foo’)
4,OurSQL 聲明使用OurSQL驅動
engine = create_engine(‘mysql+oursql://scott:tiger@localhost/foo’)
詳細內容請點這里:https://www.cnblogs.com/jackadam/p/8587006.html
三、解決辦法
按照 Flask-SQLAlchemy 文檔的說明,配置好 SQLALCHEMY_DATABASE_URI = ‘mysql://username:password@server/db’ 后操作 MySQL 報錯 ImportError: No module named ‘MySQLdb’。既然缺少 MySQLdb 這個模塊,按照常規方法缺啥補啥吧,執行 pip install MySQL-python 卻報錯 ImportError: No module named ‘ConfigParser’。查了一下,這是由于 MySQL-python 不支持 Python 3(MySQL-3.23 through 5.5 and Python-2.4 through 2.7 are currently supported)。
于是 找到了一個替代—— PyMySQL。執行 pip install PyMySQL,將數據庫連接改為 mysql+pymysql://username:password@server/db,接下來的操作就一切正常了。
安裝pymysql:pip install pymysql
總結
以上是生活随笔為你收集整理的falsk-sqlalchemy 连接数据库出现 No module named ‘MySQLdb‘(笔记自用)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中if __name__ =
- 下一篇: 超详细的CentOS7中安装Git,yu