安装mysql8.0.11及修改root密码、连接navicat for mysql的思路详解

 更新时间:2018年06月14日 11:24:00   作者:小牛同学_  
这篇文章主要介绍了安装mysql8.0.11以及修改root密码、连接navicat for mysql,需要的朋友可以参考下

1.1. 下载:

官网下载zip包,我下载的是64位的:

下载地址:https://dev.mysql.com/downloads/mysql/

下载zip的包:

下载后解压:(解压在哪个盘都可以的)

我放在了这里 E:\web\mysql-8.0.11-winx64 ,顺便缩短了文件名,所以为 E:\web\mysql-8.0.11。

1.3. 生成data文件:

以管理员身份运行cmd

程序--输入cmd 找到cmd.exe 右键以管理员身份运行

进入E:\web\mysql-8.0.11\bin 下

执行命令:mysqld --initialize-insecure --user=mysql  在E:\web\mysql-8.0.11目录下生成data目录

1.4. 启动服务:

执行命令:net start mysql  启动mysql服务,若提示:服务名无效...(请看步骤:1.5);

1.5. 解决启动服务失败(报错):

提示:服务名无效

解决方法:

执行命令:mysqld -install  即可(不需要my.ini配置文件 注意:网上写的很多需要my.ini配置文件,其实不需要my.ini配置文件也可以,我之前放置了my.ini文件,反而提示服务无法启动,把my.ini删除后启动成功了)

若出现提示“服务正在启动或停止中,请稍后片刻后再重试一次”,需要去资源管理器中把mysql进程全结束了,重新启动即可。

1.6. 登录mysql:

登录mysql:(因为之前没设置密码,所以密码为空,不用输入密码,直接回车即可)

E:\mysql-5.7.20-winx64\bin>mysql -u root -p 

Enter password:

1.7. 查询用户密码:

查询用户密码命令:mysql> select host,user,authentication_string from mysql.user;

host: 允许用户登录的ip‘位置'%表示可以远程;

user:当前数据库的用户名;

authentication_string: 用户密码(后面有提到此字段);

1.8. 设置(或修改)root用户密码:

默认root密码为空的话 ,下面使用navicat就无法连接,所以我们需要修改root的密码。

这是很关键的一步。此处踩过N多坑,后来查阅很多才知道在mysql 5.7.9以后废弃了password字段和password()函数;authentication_string:字段表示用户密码。

下面直接演示正确修改root密码的步骤:

  一、如果当前root用户authentication_string字段下有内容,先将其设置为空,否则直接进行二步骤。

use mysql; 
update user set authentication_string='' where user='root'

3.下面直接演示正确修改root密码的步骤:

  二、使用ALTER修改root用户密码,方法为 ALTER user 'root'@'localhost' IDENTIFIED BY '新密码'。如下:

ALTER user 'root'@'localhost' IDENTIFIED BY 'Cliu123#'

  此处有两点需要注意:

1、不需要flush privileges来刷新权限。

2、密码要包含大写字母,小写字母,数字,特殊符号。

  修改成功; 重新使用用户名密码登录即可;

注意: 一定不要采取如下形式该密码:

use mysql; 
update user set authentication_string="newpassword" where user="root"; 

这样会给user表中root用户的authentication_string字段下设置了newpassword值;

当再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'时会报错的;

因为authentication_string字段下只能是mysql加密后的41位字符串密码;其他的会报格式错误;

*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE

至此,安装mysql和修改root密码告一段落。

开始navicat for mysql篇。

账号密码都正确,连接报错1251。OK 我们先来看看这个改动:

在MySQL 8.04前,执行:SET PASSWORD=PASSWORD('[新密码]');但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。

so,我们这里需要再次修改一次root密码。

先登录进入mysql环境:执行下面三个命令。(记得带上分号)

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

OK.现在再去重连。perfect!

折腾了这么久,总算可以开始我的SQL之路了,撒花!撒花!撒花!

本来准备好的有截图说明,发现插入图片失败,就先这样吧。

总结

以上所述是小编给大家介绍的安装mysql8.0.11及修改root密码、连接navicat for mysql的思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 使用use index优化sql查询的详细介绍

    使用use index优化sql查询的详细介绍

    本篇文章是对使用use index优化sql查询进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 解决JDBC的class.forName()问题

    解决JDBC的class.forName()问题

    这篇文章主要介绍了关于JDBC的class.forName()问题,比较两个Java文件可见,连接Db2和连接MySQL的方式非常类似,唯一的区别在于,调用 DriverManager.getConnection() 方法时,传入的URL不同,本文给大家详细讲解,需要的朋友参考下
    2022-09-09
  • Linux中MySQL 双主复制的配置指南

    Linux中MySQL 双主复制的配置指南

    在数据驱动的时代,数据库的高可用性和数据一致性是每个企业必须考虑的重要问题,MySQL 双主复制提供了一种有效的解决方案,通过配置两台服务器互为主从,保证数据的实时同步和高可用性
    2024-07-07
  • MySQL5.7更改密码时出现ERROR 1054 (42S22)的解决方法

    MySQL5.7更改密码时出现ERROR 1054 (42S22)的解决方法

    这篇文章主要为大家详细介绍了MySQL5.7更改密码时出现ERROR 1054 (42S22)的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • mysql中的不等于实例详解

    mysql中的不等于实例详解

    这篇文章主要介绍了mysql中的不等于实例详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • mysql 8.0.28 安装配置方法图文教程

    mysql 8.0.28 安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 8.0.28 安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • MySQL占用内存过大解决方案图文详解

    MySQL占用内存过大解决方案图文详解

    最近无意中在任务管理器发现MySQL内存占用达到700+M,所以下面这篇文章主要给大家介绍了关于MySQL占用内存过大的完美解决方案,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • MySQL查看和修改最大连接数的方法步骤

    MySQL查看和修改最大连接数的方法步骤

    使用MySQL 数据库的站点,当访问连接数过多时,就会出现 "Too many connections" 的错误,所以我们需要设置MySQL查看和修改最大连接数,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • Innodb中mysql快速删除2T的大表方法示例

    Innodb中mysql快速删除2T的大表方法示例

    这篇文章主要给大家介绍了关于Innodb中mysql快速删除2T的大表的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • 详解sql中的参照完整性(一对一,一对多,多对多)

    详解sql中的参照完整性(一对一,一对多,多对多)

    这篇文章主要介绍了sql中的参照完整性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04

最新评论