mysql8.0.12.0 安装教程与问题

安装步骤:

安装文件的mysql-installer-community-8.0.3.0-rc.msi的百度网盘链接:https://pan.baidu.com/s/1oetOQL8YDiLSPwhDgLKzpg 提取密码:0gyo 

 

  1. 2

下载后,双击msi文件安装。

 

  1. 3

如果检测到已安装MySQL版本,点击右侧Add按钮。之前未安装过其他版本则依次点击Next。

 

  1. 4

选择MySQL Servers选项。

 

  1. 5

将选择好的8.0版本添加至右侧。

 

  1. 6

点击Next按钮。

 

  1. 7

点击Execute按钮。

 

  1. 8

点击Next按钮。

 

10. 9

如果已安装其他版本MySQL,端口位置会出现黄色感叹号。

 

11. 这里我将端口号改成了3308,当然大家也可以将其他版本的端口号改成3306以外的端口,8.0版本使用默认的3306端口。请牢记端口号。点击Next按钮。

 

 

12. 设置root密码,请牢记密码。添加用户,用户也可以等安装完成后再添加。

 

13. 设置服务名称,该名称即为电脑系统中MySQL8.0的服务名称。点击Next按钮。

 

14. 点击Execute按钮。

 

15. 待所有的Configuration前出现绿色√后,点击Finish按钮。

 

16. 点击Next按钮。

 

17. 点击Finish按钮。

 

18. 安装完成,现在看到已经有两个版本的MySQL同时存在了。

 

19. 新建个数据库连接测试一下安装是否正确。

 

20. 建立连接。此处的端口号、root密码为刚刚安装时设置的。

 

21. 20

连接完成,说明安装正确。

 

 

问题汇总:

重装了电脑,安装了最新版的MySQL8.0.12.0数据库,结果Navicat本地连接Mysql报1251错误,但是dos命令进入mysql,账号密码都是正确的。

在网上查的是,出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 

我常说的是第二种方式 

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 
FLUSH PRIVILEGES; #刷新权限 

--------------------------------------------------------------------------------------------------------------------------------------------------------

我看好多人拿着命令直接复制,这样是不对的。 

'root'   为你自己定义的用户名

'localhost' 指的是用户开放的IP,可以是'localhost'(仅本机访问,相当于127.0.0.1),可以是具体的'*.*.*.*'(具体某一IP),也可以是 '%' (所有IP均可访问)

'password' 是你想使用的用户密码

-----------------------------------------------------------------------------------------------------------------------------------------------------------

问题就解决了

Navicat远程连接mysql

错误代码是1130,ERROR 1130: Host X.X.X.X is not allowed to connect to this MySQL server

解决方法:

在服务器登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。

下面是用SQL语句解决问题:

1.使用root登录

使用命令 mysql -u root -p   

8.0以后版本可在开始菜单中的工具里登录:

2.选择mysql库

use mysql;

3.查看mysql库中的user表的host值

select 'host' from user where user='root'; 

4.修改host值

update user set host = '%' where user ='root';  

5.刷新MySQL的系统权限相关表

flush privileges; 

最后重启下mysql服务。

mysql 2509 加密方式导致的报错

解决方法:更改加密方式

mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password

  1. use mysql; #选择数据库 
  2. ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更改加密方式
  3. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; #更新用户密码
  4. FLUSH PRIVILEGES; #刷新权限

注意:如果已经按照上文中把host 改成了%,那么更改加密方式应改为:

  1.  
    ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更改加密方式
  2.  
     
  3.  
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码'; #更新用户密码
 

猜你喜欢

转载自www.cnblogs.com/bigcatblog/p/9629009.html