如何在mysqld_safe正在运行的场景中设置mysql的密码?

时间:2018-10-18 04:27:03

标签: mysql macos

我使用贝娄命令查找正在运行的mysql服务。

$ps -ef | grep mysqld
  501  4512     1   0 12:19 pm ??         0:00.06 /bin/sh /Applications/MAMP/Library/bin/mysqld_safe --port=8889 --socket=/Applications/MAMP/tmp/mysql/mysql.sock --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --log-error=/Applications/MAMP/logs/mysql_error_log
  501  4849  4512   0 12:19 pm ??         0:00.29 /Applications/MAMP/Library/bin/mysqld --basedir=/Applications/MAMP/Library --datadir=/Applications/MAMP/db/mysql56 --plugin-dir=/Applications/MAMP/Library/lib/plugin --log-error=/Applications/MAMP/logs/mysql_error_log.err --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --socket=/Applications/MAMP/tmp/mysql/mysql.sock --port=8889

但是我忘记了密码,或者我没有设置密码。

现在如何设置mysql的密码? mysqld_safe服务是否正在运行意味着密码未设置?

1 个答案:

答案 0 :(得分:0)

1-使用此命令停止mysql恶魔进程:

sudo /etc/init.d/mysql stop

2-使用--skip-grant-tables选项和此命令启动mysqld妖进程

sudo / usr / sbin / mysqld --skip-grant-tables --skip-networking&

3-使用此命令启动mysql客户端进程

mysql -u根

4-从mysql提示符处执行此命令以能够更改任何密码

冲洗特权;

5-然后重置/更新您的密码

为root @'localhost'= PASSWORD('password');设置密码

6-如果您有一个可以从任何地方连接的mysql根帐户,则还应该这样做:

更新mysql.user SET密码= PASSWORD('newpwd'),其中User ='root';

7种替代方法:

使用mysql    更新用户SET密码= PASSWORD('newpwd')    Host ='localhost'和User ='root';

8-并且,如果您拥有可以从任何地方访问的root帐户:

使用mysql    更新用户SET密码= PASSWORD('newpwd')    主机='%'且用户='根';

对于这两种方法,一旦收到指示成功查询的消息(受影响的一行或多行),则刷新特权:

冲洗特权;

9-然后停止mysqld进程并以经典方式重新启动它:

sudo /etc/init.d/mysql stop

sudo /etc/init.d/mysql start