Python DB-API使用流程:
一、Mac安装Mysql数据库
1.下载地址:MySQL :: Download MySQL Community Serverhttps://dev.mysql.com/downloads/mysql/
可以利用命令uname -a 或者 uname -a | awk -F " " '{print $(NF-1)}' 来查看Mac笔记本的类型,是x86还是ARM,下载合适的版本
2.安装Mysql
一路默认选项即可
3.安装完成后,前往“系统偏好设置”中最下方进行查看,如果没有出现图标,退出并重新登录下AppID后,可以看到。
4.点击“MySQL”图标,出现MySQL安装版本和运行情况:
5.在终端中输入mysql -uroot -p,在输入安装时设定的密码,成功进入mysql的对话框:
MySQL在Mac上安装及配置全部完成,接下来就可以开始MySQL使用操作了。
二、Python3.8引入API模块
利用命令安装mysql.connector
python3 -m pip install MYSQL-connector-python
在工程中导入模块:
import mysql.connector
三、获取与数据库的连接
import mysql.connector mydb = mysql.connector.connect( host='localhost', user='root', passwd='******' ) print(mydb)
运行后,提示错误:
使用mysql-connector连接mysql数据的库的时候,遇到如下报错:
mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not supported
解决方法:
1、mysql的版本问题,在mysql18之前的版本的加密规则是mysql_native_password,但是mysql18的是caching_sha2_password。所以需要修改加密规则,将其改为mysql_native_password。
登陆mysql,将root用户的加密方式改成mysql_native_password,如何查看现有的用户?
SELECT user, host, plugin from mysql.user;
现在的加密规则都为caching_sha2_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你自己的密码';(转自于:
作者:pooncheukkei
链接:https://www.jianshu.com/p/a97be774fae5
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。)
四、执行SQL语句和存储过程
import mysql.connector mydb = mysql.connector.connect( host='localhost', user='root', passwd='******', auth_plugin='mysql_native_password', database='runoob', ) mycursor = mydb.cursor() # mycursor.execute("CREATE TABLE sites (name VARCHAR(255), url VARCHAR(255))") sql = "INSERT INTO sites (name, url) VALUES (%s, %s)" val = ("RUNOOB3", "https://www.runoob3.com") val2 = [ ('Google', 'https://www.google.com'), ('Github', 'https://www.github.com'), ('Taobao', 'https://www.taobao.com'), ('stackoverflow', 'https://www.stackoverflow.com/') ] mycursor.execute(sql, val) mycursor.executemany(sql, val2) mydb.commit() # 数据表内容有更新,必须使用到该语句
五、关闭数据库连接
# 关闭连接
mydb.close()