关于数据库软件连接数据库的一些问题

用Navicat for MySql 连接mysql数据库报Client does not support…

造成问题的根本原因 :

	mysql8.0 的解密方式低版本的不同, 当使用低版本的数据库软件连接时会报这个问题

解决办法 :

	先连接数据库:mysql -uroot -p;
	之后修改当前数据库的加密规则
	ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '数据库密码';
	刷新系统权限
	flush privileges;

ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@’%’

主要原因:

	%表示不限制ip访问,localhost表示仅限本地访问  
	而这个错误是因为当前root用户的host被设置成 localhost即仅本地访问

解决办法:

	登录数据库
	mysql -uroot -p 
	`use mysql;`
	select user,host from user;
	这样会在user表中查看到你user 对应的host
	注意看当前root对应的host
	出现这个问题可能是你root对应的host 显示的是localhost
	你可能执行的是
	ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
	改成
	ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

版权声明:本文为qq_44028464原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。