[报错] [MySQL] [Python] Authentication plugin 'caching_sha2_password' is not supported

错误信息

Traceback (most recent call last):
  File "D:\connect_mysql.py", line 6, in <module>
    passwd="password",
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\__init__.py", line 179, in connect
    return MySQLConnection(*args, **kwargs)
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\connection.py", line 95, in __init__
    self.connect(**kwargs)
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\abstracts.py", line 716, in connect
    self._open_connection()
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\connection.py", line 210, in _open_connection
    self._ssl)
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\connection.py", line 142, in _do_auth
    auth_plugin=self._auth_plugin)
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\protocol.py", line 102, in make_auth
    auth_data, ssl_enabled)
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\protocol.py", line 58, in _auth_response
    auth = get_auth_plugin(auth_plugin)(
  File "D:\Ana\envs\tf\lib\site-packages\mysql\connector\authentication.py", line 191, in get_auth_plugin
    "Authentication plugin '{0}' is not supported".format(plugin_name))
mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not supported

环境

  • Windows 10
  • MySQL 8.9
  • Python 3.6

前因

准备用Python连到我的MySQL数据库,可是报了以上错误。原因大概是因为在MySQL 8.0以后,默认的身份认证是caching_sha2_password而不是mysql_native_password

后果

多传入一个参数auth_plugin即可:

import mysql.connector

db = mysql.connector.connect(
	host='host', 
	user='user', 
	passwd='password', 
	# Important!!!
	auth_plugin='mysql_native_password'
	# Important!!!
)

Reference

  1. Ben. (May 27, 2018). Authentication plugin ‘caching_sha2_password’ is not supported.
    Retrieved from https://stackoverflow.com/questions/50557234/authentication-plugin-caching-sha2-password-is-not-supported
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Xovee

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值