mac下忘记数据库的密码的解决方法

参考:https://blog.csdn.net/u012720262/article/details/52082098

1.获得管理员权限,在终端中输入如下命令

  sudo su


2.在/usr/local/var/mysql/路径中,关闭mysql server:

mysql.server stop


3.编辑: vi /usr/local/etc/my.cnf,加上红色那句话。保存。

# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1

skip-grant-tables


4.重新启动mysql:

mysql.server start


/*******以下当前方法实行不通的时候尝试**********

2.越过权限和密码,直接登陆MySQL(安全模式启动Mysql)

mysqld_safe --skip-grant-tables &

如果不行可以尝试 /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &

(如果在给定目录下,找不到mysqld_safe,则使用find / -name "*mysqld_safe*"查找一下mysqld_safe的文件位置)

********************************************/


5.重新在打开另外一个终端窗口(强调一遍要另外打开一个终端窗口),打入如下命令:

mysql -u root 

如果提示 command not found ,则可以输入mysql这个执行文件的绝对路径,命令如下:

/usr/local/mysql/bin/mysql -u root

(如果在给定目录下,找不到mysql,则使用上述步骤2中和mysqld_safe同级目录中执行mysql -u root)


6.接下来就是改密码了

Mysql5.7版本请用这条命令-> UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';


Mysql其他低版本请用这条命令-> UPDATE mysql.user SET Password=PASSWORD('123456') WHERE User='root';


**************************************假装是分割线*****************************************

上面还有坑,今天才发现。5.7.21执行了:

UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';

结果如下:


结果分明告诉我:0 rows affected。后来发现:(https://blog.csdn.net/u010603691/article/details/50541979)

MySQL 设置的密码中必须至少包含一个大写字母、一个小写字母、一个特殊符号、一个数字,

密码长度至少为8个字符

重新修改密码,执行后结果如下图所示:


这下结果分明就:1 row affected嘛。。。哭哭。。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值