我在计算机上设置了一个新的MySQL实例,每次添加用户时都会将身份验证类型设置为caching_sha2_password
。
即使我将身份验证类型设置为" Standard
",然后在我保存用户时更改它,也会发生这种情况。我还将默认身份验证插件更改为" mysql_native_password
",但它仍然继续这样做。
使用caching_sha2_password
,我无法从.net核心连接到数据库,因为我收到错误声明:
MySqlException:身份验证方法' caching_sha2_password'任何可用的插件都不支持
如何使用标准身份验证类型保存用户?
答案 0 :(得分:44)
我今天遇到了同样的问题。我发现修复它的唯一方法是:
应该解决你的问题。
答案 1 :(得分:2)
运行
mysql> CREATE USER ‘username’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
答案 2 :(得分:2)
使用mysql_native_password重置用户密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '{NewPassword}';
答案 3 :(得分:1)
您也可以使用MySQL Workbench来做到这一点:
“用户和私人身份”->“添加帐户”->身份验证类型:“标准”
此用户现在可以使用默认登录名登录,即phpMyAdmin。
答案 4 :(得分:1)
import mysql.connector
def connect():
conn = mysql.connector.connect(host='localhost',
database='mydb',
user='root_new',
password='root_new')
if conn.is_connected():
print('Connected to MySQL database')
if name == 'main':
connect()
Output : Connected to MySQL database
Follow the Screenshots
1.Stop database server in preferences for MacOS.
2.initialise DB with legacy authentication.
3.Open mysqlWorkBench and Create a new user with standard authentication.
4.Create a new schema(DB) in sqlWorkbench.
5.Execute python Code in Eclipse.
答案 5 :(得分:0)
对于使用MySQL Workbench 8.0 CE仍在挣扎中的那些人,以下对我有用:
Administration - Options File preview
我必须删除并重新添加用户。它不会自动将用户的身份验证类型更改回caching_sha2_password,而是将其保持在标准状态。