如何在mysqld\u safe is running场景中设置mysql的密码?

ldxq2e6h  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(268)

我用下面的命令找到了运行 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 服务正在运行意味着没有设置密码?

gjmwrych

gjmwrych1#

1-使用以下命令停止mysql demon进程:
sudo/etc/init.d/mysql停止
2-使用--skip grant tables选项启动mysqld demon进程
sudo/usr/sbin/mysqld—跳过授权表—跳过网络&
3-使用以下命令启动mysql客户机进程
mysql-u根
从mysql提示符执行这个命令,可以更改任何密码
刷新特权;
5-然后重置/更新密码
为root@'localhost'设置密码=password('password');
6-如果你有一个mysql根帐户,可以从任何地方连接,你还应该做:
更新mysql.user set password=password('newpwd'),其中user='root';
7-替代方法:
使用mysql update user set password=password('newpwd'),其中host='localhost'和user='root';
8-如果您有一个可以从任何地方访问的根帐户:
使用mysql update user set password=password('newpwd'),其中host='%'和user='root';
对于这两种方法,一旦收到指示查询成功的消息(一行或多行受影响),刷新权限:
刷新特权;
9-然后停止mysqld进程,并以经典方式重新启动它:
sudo/etc/init.d/mysql停止
sudo/etc/init.d/mysql启动

相关问题