mysql 更改默认编码以及Navicat for mysql问题的解决
mysql 更改默认编码以及Navicat for mysql问题的解决
mysql更改默认编码格式及解决Navicat for mysql问题的解决
修改mysql默认编码
首先进入mysql窗口程序输入安装时候设置的密码后输入一下代码
mysql> show variables like ‘character%’;(查看mysql所有编码格式)
set character_set_database=utf8;(修改数据库的默认编码格式为utf-8)
SET NAMES ‘utf8’;(修改了使用客户端字符集 客户端返回时 连接数据库时的字符集为utf-8)
等同于
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
该三条指令
SET character_set_server=utf8;(修改安装时默认的编码格式)
SET character_set_system=utf8;(修改数据库系统使用的编码格式)
Navicat for mysql连接出现的问题解决办法
问题1 无法连接
描述:
Navicat for MySQL连接mysql提示Client does not support authentication protocol requested by server; consider upgrading MySQL client
客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端
在Navicat for mysql连接时出现问题
进入mysql
输入如下指令:
1,ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER; #修改加密规则 (这行我没有写,不过貌似也可以)
2,ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
即更新user为root,host为localhost 的密码为123456(这里的密码是一会连接时需要输入的密码)
3,FLUSH PRIVILEGES; #刷新权限
进入后输入密码点击测试 如果出现如下图就连接成功了
备注:该问题的解释是,由于mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 所以导致了这个问题的出现
解决该问题的方法有两个
1.升级navicat驱动;
2.把mysql用户登录密码加密规则还原成mysql_native_password.
但是这里我并没有进行还原 而是直接从新设置密码也可以。
问题2 连接时出现如下图 密码错误
描述:
这个就是应该你的密码输入不正确了 这里输入的密码不是安装时候的密码 是问题哪里修改过后的密码。
mysql下载链接
本文参考文章:https://www.cnblogs.com/-831/p/11609053.html
https://www.cnblogs.com/Daniel-c-h-e-n/p/10800835.html
https://blog.****.net/weixin_43789195/article/details/87427938