MacOS下MySQL密码重置

2017-11-26  本文已影响34人  有志者说

关于Mac上MySQL的密码重置,网上有很多说明,参照着试了一下,多有错误,整理备份之,供需要者参考。

1.关掉MySQL

可以通过系统偏好设置进行关闭,或者使用命令行。在Mac OS X启动和停止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

2.Safe模式启动Mysql

在终端中,进入Mysql目录,使用安全模式启动,禁止Mysql的验证功能,命令如下:

 cd /usr/local/mysql/bin/
 sudo su  
 ./mysqld_safe --skip-grant-tables &

3.更新密码

上一步是安全模式启动,可以直接登录Mysql,执行如下命令:

./mysql

在MySQL命令行中执行更新密码的SQL:

mysql>FLUSH PRIVILEGES;
mysql>UPDATE mysql.user 
SET authentication_string=PASSWORD('123456') 
WHERE user='root';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 1

4.正常模式启动Mysql

关闭Mysql后正常模式启动,可以用新设置的密码登录MySQL。

sh-3.2# sudo /usr/local/mysql/support-files/mysql.server stop
Shutting down MySQL
...
SUCCESS! 
[1]+  Done                    ./mysqld_safe --skip-grant-tables
sh-3.2# 
sh-3.2# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 21
.....//提示信息省略
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

5.重设密码

登录MySQL之后,在MySQL命令行中执行如下命令:

 mysql> use mysql
 ERROR 1820 (HY000): You must reset your password using 
 ALTER USER statement before executing this statement.
 mysql> SET PASSWORD = PASSWORD('123456');
 Query OK, 0 rows affected, 1 warning (0.00 sec)

操作完成。

上一篇 下一篇

猜你喜欢

热点阅读