以下方法亲测有效,过程使用的工具只有mac的终端无需workbench

当我们通过终端连接mysql数据库时候我们会看到这样的信息

ERROR 1045: Access denied for user: 'root@localhost' (Using

password: NO)

或者

ERROR 1045: Access denied for user: 'root@localhost' (Using

password: YES)

解决上面错误的方法之一就是重新设置我们的mysql的root密码。

1.在终端输入下面命令关闭正在运行的mysql,如果msyql没有运行可以跳过,需要输入mysql的密码。如果mysql密码忘记了,可以直接通过系统偏好设置里面关闭!

/usr/local/mysql/bin/mysqladmin -u root -p shutdown

系统便好设置关闭如图

这里写图片描述

2.进入mysql的bin目录执行如下命令

$ cd /usr/local/mysql/bin

$ sudo su

之后输入管理员密码会看到

sh-3.2#

之后我们输入下面命令以安全模式运行mysql

sh-3.2#./mysqld_safe --skip-grant-tables &

运行结束我们打开mac的系统偏好设置,选择msyql,我们会发现Mysql重新运行了如图

这里写图片描述

回到终端点击Command + N 重新打开一个终端

输入

mysql -u -root

这时候我们不需要密码就能进入mysql

Your MySQL connection id is 57

Server version: 5.7.10 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

注意:这里有的时候会进不来,这个时候可以尝试重启mac电脑,具体原因我也不清楚。

3.修改root密码

首先执行下面命令为了能够修改任意的密码

mysql> FLUSH PRIVILEGES;

之后执行修改密码的SQL语句,这里的qsd19001008可以替换你自己想要修改的密码

mysql> SET PASSWORD FOR root@'localhost' = PASSWORD('qsd19001008');

如果你的子帐号可以登录msyql你也可以尝试下面的方法

mysql>UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

mysql>USE mysql

UPDATE user SET Password = PASSWORD('newpwd')

WHERE Host = 'localhost' AND User = 'root';

又或者

mysql>USE mysql

UPDATE user SET Password = PASSWORD('newpwd')

WHERE Host = '%' AND User = 'root';

最后刷新

FLUSH PRIVILEGES;

Control+D推出mysql,然后关闭安全模式数据库,这里要输入你刚才设置数据密码就好啦

/usr/local/mysql/bin/mysqladmin -u root -p shutdown

到目前为止你就找回了你mysql的密码啦

正常启动mysql数据库,输入刚才设置的密码qsd19001008

/usr/local/mysql/share/mysql.server start

如果上面的命令不执行,同理到系统偏好里开启mysql服务器。

最后执行下面的终端命令,然后输入刚才设置的密码qsd19001008我们就可以正常进入mysql啦

$mysql -u root -p

mac上mysql root密码忘记或权限错误的解决办法的更多相关文章

  1. 数据库之mac上mysql root密码忘记或权限错误的解决办法

    [转自  http://blog.csdn.net/u014410695/article/details/50630233] 以下方法亲测有效,过程使用的工具只有mac的终端无需workbench 当 ...

  2. MySQL root密码忘记后更优雅的解决方法

    MySQL root密码忘记后更优雅的解决方法 https://www.jb51.net/article/143453.htm /usr/bin/mysqld_safe --defaults-file ...

  3. MySQL root密码忘记解决

    --MySQL root密码忘记的解决办法 -----------------------------------2014/03/14 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接My ...

  4. Mysql的Root密码忘记,查看或修改的解决方法

    Mysql的Root密码忘记,查看或修改的解决方法:1.首先启动命令行2.在命令行运行:taskkill /f /im mysqld-nt.exe3.继续在命令行运行:mysqld-nt --skip ...

  5. Centos7 之 MariaDB(Mysql) root密码忘记的解决办法

    MariaDB(Mysql) root密码忘记的解决办法 1.首先先关闭mariadb数据库的服务 # 关闭mariadb服务命令(mysql的话命令就是将mariadb换成mysql) [root@ ...

  6. MAC 重置MySQL root 密码

    重置MySQL root 密码:当忘记密码,或者想要强行重置 MySQL 密码的时候,可以像下面这样: 1.停止 MySQL 服务 sudo /usr/local/mysql/support-file ...

  7. MySQL root密码忘记,原来还有更优雅的解法!

    一直以来,对于MySQL root密码的忘记,以为只有一种解法-skip-grant-tables. 问了下群里的大咖,第一反应也是skip-grant-tables.通过搜索引擎简单搜索了下,无论是 ...

  8. MAC下MySQL初始密码忘记修改初始密码

    解决MAC下MySQL忘记初始密码的方法分享给大家,供大家参考,具体内容如下 第一步: 点击系统偏好设置->最下边点MySQL,在弹出页面中,点击stop MySQL Servier,输入密码关 ...

  9. MAC下MySQL初始密码忘记怎么办

    解决MAC下MySQL忘记初始密码的方法分享给大家,供大家参考,具体内容如下 第一步: 点击系统偏好设置->最下边点MySQL,在弹出页面中,关闭服务 第二步:进入终端输入:cd /usr/lo ...

随机推荐

  1. Qt编写守护程序保证程序一直运行(开源)

    没有任何人敢保证自己写的程序没有任何BUG,尤其是在商业项目中,程序量越大,复杂度越高,出错的概率越大,尤其是现场环境千差万别,和当初本地电脑测试环境很可能不一样,有很多特殊情况没有考虑到,如果需要保 ...

  2. [原]openstack-kilo--issue(九) heat stacks topology中图形无法正常显示

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. ======声明======= 欢迎转载:转载请注明出处 http://www. ...

  3. oracle 创建表同时添加注释

    创建数据库表.添加注释的方法: create table WARNINGRECORD ( RecordID ) primary key not null ); comment on column WA ...

  4. tomcat使用同一个http端口如何配置多个web项目?

    1. 在server.xml中 如下配置: <Host name="localhost" appBase="webapps2" unpackWARs=&q ...

  5. python数据类型之pandas—DataFrame

    DataFrame定义: DataFrame是pandas的两个主要数据结构之一,另一个是Series —一个表格型的数据结构 —含有一组有序的列 —大致可看成共享同一个index的Series集合 ...

  6. Tarjan 强连通分量 及 双联通分量(求割点,割边)

    Tarjan 强连通分量 及 双联通分量(求割点,割边) 众所周知,Tarjan的三大算法分别为 (1)         有向图的强联通分量 (2)         无向图的双联通分量(求割点,桥) ...

  7. [No0000151]菜鸟理解.NET Framework中的CLI,CLS,CTS,CLR,FCL,BCL

    最下层蓝色部分是.NET Framework的基础,也是所有应用软件的基础..NET Framework不是凭空出来的,实际上API,COM+,和一些相关驱动依然是它的基石..NET Framewor ...

  8. Netty入门教程——认识Netty

    什么是Netty? Netty 是一个利用 Java 的高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的 API 的客户端/服务器框架. Netty 是一个广泛使用的 Java 网络编程框架(N ...

  9. MySQL命令:约束

    约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性.唯一性 约束分类: 约束类型与关键字: 主键      PRIMARY KEY 默认值  DEFAULT 唯一      UN ...

  10. Entity Framework 6如何进行导航属性的筛选(context.Msg.First(t=>t.Id==1).Include(t=>t.MsgDetail),筛选MsgDetail带条件)

    问题: https://q.cnblogs.com/q/98333/ Msg表(Id,Content,IsDel).内有 virtual ICollection<MsgDetail> Ms ...