MySQL 握手协议是 MySQL 服务器与客户端之间建立连接时的通信协议。这个过程涉及到一系列的消息交换,以确保双方能够正确地识别彼此,并协商出合适的通信参数。
MySQL 握手协议主要包括以下几种类型:
MySQL 握手协议广泛应用于各种需要访问数据库的场景,如 Web 应用程序、移动应用程序、数据分析工具等。无论是在本地开发环境还是在生产环境中,都需要通过握手协议来建立与 MySQL 服务器的连接。
原因:这个错误通常是由于 MySQL 服务器使用了 caching_sha2_password 身份验证插件,而客户端不支持或未正确配置该插件。
解决方法:
caching_sha2_password 插件。mysql_native_password,这是一种更广泛支持的插件。ALTER USER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';default_authentication_plugin=mysql_native_password 参数。import mysql.connector
config = {
'user': 'username',
'password': 'password',
'host': 'host',
'database': 'database',
'default_authentication_plugin': 'mysql_native_password'
}
cnx = mysql.connector.connect(**config)腾讯云数据库TDSQL训练营
腾讯云数据库TDSQL训练营
云+社区沙龙online[数据工匠]
Techo Youth2022学年高校公开课
企业创新在线学堂
“中小企业”在线学堂
云+社区沙龙online第6期[开源之道]
企业创新在线学堂
10期实战直播|腾讯云可观测平台全面升级,场景实践一次讲透
腾讯云消息队列数据接入平台(DIP)系列直播