目录一、使用 Mysqladmin 重置密码二、使用 mysqld 重置密码三、使用 Mysql 安全性模式重置密码四、使用 my.cnf
每种方法都有其适用的情况,根据具体情况选择合适的方法。无论选择哪种方法,请务必在重置密码后及时删除临时用户并重新启动 MySQL
服务。
停止服务
使用 mysqld_safe
命令启动 MySQL
服务,跳过权限检查,执行后可能需要回车下
$ sudo mysqld_safe --skip-grant-tables &
登录 MySQL
服务,并使用 mysqladmin
命令重置密码
# 无需密码,会直接登入
$ mysql -u root
# 刷新权限
mysql> FLUSH PRIVILEGES;
# 这里的 'new_passWord' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
# 修改好后退出 MySQL
mysql> exit
停止 MySQL
服务,并重新启动密码登入即可
# 1、停止 MySQL 服务上面有,第一条就是
# 2、重启启动 MySQL 服务,并使用密码登入
# systemctl 启动的使用这个重新启动
$ sudo systemctl start mysql
# mac 本机,可以使用这个或可视化界面启动
$ sudo mysql.server start
# 3、密码登录
$ mysql -u root -p
# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
停止服务
# systemctl 启动的使用这个停止
$ sudo systemctl stop mysql
# mac 本机,可以使用这个或可视化界面停止
$ sudo mysql.server stop
使用 mysqld_safe
命令启动 MySQL
服务,跳过权限检查,执行后需要回车下
$ sudo mysqld_safe --skip-grant-tables &
登录 MySQL
服务,并创建新的临时用户,拥有 root
权限
# 无需密码,会直接登入
$ mysql -u root
# 刷新权限
mysql> FLUSH PRIVILEGES;
# 创建一个临时用户 temp_root 及 temp_password
mysql> CREATE USER 'temp_root'@'localhost' IDENTIFIED BY 'temp_password';
# 设置权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'temp_root'@'localhost' WITH GRANT OPTioN;
# 修改好后退出 MySQL
mysql> exit
停止 MySQL
服务,并重新启动密码登入,并使用 ALTER
命令修改 root
用户密码
# 1、停止 MySQL 服务上面有,第一条就是
# 2、重启启动 MySQL 服务,并使用密码登入
# systemctl 启动的使用这个重新启动
$ sudo systemctl start mysql
# mac 本机,可以使用这个或可视化界面启动
$ sudo mysql.server start
# 3、临时用户密码登录
$ mysql -u temp_root -p
# 4、这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
# 5、修改好后退出 MySQL
mysql> exit
# 6、停止 MySQL 服务上面有,第一条就是
# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
再次使用 mysqld_safe
命令启动 MySQL
服务,跳过权限检查,删除临时用户
$ sudo mysqld_safe --skip-grant-tables &
$ mysql -u root
mysql> FLUSH PRIVILEGES;
mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'temp_root'@'localhost';
mysql> DROP USER 'temp_root'@'localhost';
mysql> exit
再次重启 MySQL
服务,并使用修改好的 root
密码登入
# 1、停止 MySQL 服务上面有,第一条就是
# 2、重启启动 MySQL 服务,并使用密码登入
# systemctl 启动的使用这个重新启动
$ sudo systemctl start mysql
# mac 本机,可以使用这个或可视化界面启动
$ sudo mysql.server start
# 3、密码登录
$ mysql -u root -p
停止服务
# systemctl 启动的使用这个停止
$ sudo systemctl stop mysql
# mac 本机,可以使用这个或可视化界面停止
$ sudo mysql.server stop
启动 MySQL
安全性模式
$ sudo mysqld_safe --skip-grant-tables --skip-networking &
登录 MySQL
服务,并使用 mysqladmin
命令重置密码
# 无需密码,会直接登入
$ mysql -u root
mysql> FLUSH PRIVILEGES;
# 这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
# 修改好后退出 MySQL
mysql> exit
停止 MySQL
安全性模式
$ sudo killall mysqld_safe
# 如果在本地机器上执行上面命令无法停止安全模式,可以通过杀死进程方式解决
# 1、列出 mysqld_safe 的进程
$ ps aux | grep mysqld_safe
# 2、拿到 PID 全部杀死,应该是第二列,就几位纯数字的,如果不知道可以单独输出 $ ps aux 看一下。
$ sudo kill -9 xxx xxx ...
停止 MySQL
服务,并重新启动密码登入即可
# 1、停止 MySQL 服务上面有,第一条就是,如果通过 $ sudo kill 可以一起就杀死了。
# 2、重启启动 MySQL 服务,并使用密码登入
# systemctl 启动的使用这个重新启动
$ sudo systemctl start mysql
# mac 本机,可以使用这个或可视化界面启动
$ sudo mysql.server start
# 3、密码登录
$ mysql -u root -p
# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
该方式跟上面 方式一
基本一致,只是将命令中的跳过权限指令写到 my.cnf
中,修改好后再移除。
在修改 my.cnf
之前一定要关闭 mysql
进程,关闭 mysql
,不然可能会遇到 mysql
的 sock
不能连接的问题!
停止服务
# systemctl 启动的使用这个停止
$ sudo systemctl stop mysql
# mac 本机,可以使用这个或可视化界面停止
$ sudo mysql.server stop
打开 my.cnf
,没有则创建一个
$ sudo vim /etc/my.cnf
进入 vim
编辑器编辑之后,找到 [mysqld]
,按键盘的 i
键进入编辑模式,在 [mysqld]
后面任意一行添加 skip-grant-tables
用来跳过密码验证的过程。按 ESC
退出编辑,键入 :wq
,回车即保存并退出。
[mysqld]
skip-grant-tables
启动 mysqld
服务
# systemctl 启动的使用这个重新启动
$ sudo systemctl start mysql
# mac 本机,可以使用这个或可视化界面启动
$ sudo mysql.server start
登录 MySQL
服务,并使用 mysqladmin
命令重置密码
# 无需密码,会直接登入
$ mysql -u root
# 这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
# 刷新权限
mysql> FLUSH PRIVILEGES;
# 修改好后退出 MySQL
mysql> exit
再次打开 my.cnf
,移除刚才添加的 skip-grant-tables
,保存重启 MySQL
服务,并使用新的密码登入。
到此这篇关于Mysql忘记密码怎么重置密码的实现步骤的文章就介绍到这了,更多相关Mysql忘记密码重置密码内容请搜索编程网(www.cppcns.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网(www.cppcns.com)!
--结束END--
本文标题: Mysql忘记密码怎么重置密码的几种实现方法
本文链接: https://lsjlt.com/news/430716.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0