MAC安装mysql8.0.11以及修改root密码(有效)

在停止后要记得用命令从新启动,不然会报 no connected 错误。

MAC安装mysql8.0.11以及修改root密码

1、安装

官网下载地址:

https://dev.mysql.com/downloads/mysql/

我选择安装的是macOS 10.13 64位的DMG包安装

 

2、启动mysql

打开系统偏好设置,会看到安装好的mysql

 

双击进入mysql启动

 

终端启停mysql

启动MySQL服务 sudo /usr/local/MySQL/support-files/mysql.server start

停止MySQL服务 sudo /usr/local/mysql/support-files/mysql.server stop

重启MySQL服务 sudo /usr/local/mysql/support-files/mysql.server restart

 

3、登陆mysql

刚安装完后终端登陆mysql

mysql -uroot -p

问题出现了

MYSQL会要求输入一个默认密码,但当自己在终端上使用默认密码登录的时候,总会提示一个授权失败的错误:Access denied for user ‘root’@’localhost’ (using passwor)

问题解决:

这是因为没有给root角色设置密码;

1. 打开终端停止mysql

sudo /usr/local/mysql/support-files/mysql.server stop

2. 跳过登陆方式启动并进入mysql

sudo mysqld_safe --user=mysql --skip-grant-tables --skip-networking

如下图所示:

3.  另开一个终端窗口

敲入 mysql -u root -p 命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中

4. 修改root密码

问题出现了!网上铺天盖地的重置密码的方式报错:

set password for 'root'@'localhost'=password('123');

如下图,无论改大写还是小写,都会报语法错误

ERROR 1064 (42000): You have an error in your SQL syntax;

5.  解决root密码报错

因为现在是新版本8.0了 ,老版本的修改密码的语法已不再适用,mysql 5.7.9以后废弃了password字段和password()函数;

mysql>use mysql;

mysql>FLUSH PRIVILEGES

mysql>ALTER user 'root'@'localhost' IDENTIFIED BY 'newpassward'      //注意,这里的密码要用包含8位大写+小写+特殊字符+数字的密码

会提示修改密码成功!

mysql>quit;

退出mysql;

注意:原来skip-grant-tables的终端要关闭,最好在kill掉mysql进程;

然后重启mysql;

直接用mysql -uroot -p 输入刚才设置的密码即可正常登录!

 

6. 如果还有其他问题,请直接查看官网文档,比网上各种老版本的解决方案靠谱

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

 

 

 

 

 

 

 

 

作者:龙骑士baby
         
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

没有更多推荐了,返回首页