MySQL修改root密码

本文介绍了在不同场景下重置MySQL root密码的方法,包括有密码情况下的修改、直接编辑user表以及丢失密码时的处理步骤。
        有的时候,在测试环境下忘记MySQL的root密码,找回或修改密码很关键!

01、能用root进入数据库
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');   ###修改root密码,讲root密码修改为newpass

         flush privileges;

02、有root密码修改

mysqladmin -uroot -p123123 password '123';
03: 用UPDATE直接编辑user表             ###前提是root可以使用
mysql -u root
 
mysql> use mysql;
 
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
 
mysql> FLUSH PRIVILEGES;

 

04、丢失root密码的时候

直接在shell下执行,修改完毕直接关闭shell
mysqld_safe --skip-grant-tables   ###不效验登录密码,可以免密码登录,

 
mysql> user mysql
 
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
 
mysql> FLUSH PRIVILEGES;

 

ps  -ef  | grep mysql | grep -v grep | awk  '{print $2}'  | xargs kill -9   ###杀掉mysql进程

转载:

http://pengbotao.cn/mysql-modify-password.html

修改 MySQL 数据库中 `root` 用户密码有多种方法,具体取决于当前的使用环境和权限情况。以下是几种常见且有效的修改方式: 如果当前已知 `root` 用户的旧密码,并且可以通过命令行访问 MySQL,可以使用 `mysqladmin` 命令进行修改。例如,如果旧密码是 `abc`,希望将新密码设置为 `123456`,则可以执行以下命令: ```bash $ mysqladmin -u root -p'abc' password '123456' ``` 此外,也可以通过 MySQL 内部的 SQL 命令来修改密码。登录到 MySQL 后,可以使用 `SET PASSWORD` 命令,格式如下: ```sql mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码'); ``` 具体示例为: ```sql mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123'); ``` 还有一种方法是直接操作 MySQL 系统数据库 `mysql` 中的 `user` 表来修改密码。在登录 MySQL 后,执行以下 SQL 语句: ```sql mysql> USE mysql; mysql> UPDATE user SET password=PASSWORD('新密码') WHERE user='root' AND host='localhost'; mysql> FLUSH PRIVILEGES; ``` 具体示例为: ```sql mysql> USE mysql; mysql> UPDATE user SET password=PASSWORD('123') WHERE user='root' AND host='localhost'; mysql> FLUSH PRIVILEGES; ``` 在某些情况下,如果忘记了 `root` 用户的密码,则需要通过跳过权限检查的方式重置密码。以 Windows 系统为例,可以通过以下步骤完成密码重置: 1. 关闭正在运行的 MySQL 服务。 2. 打开命令行窗口,切换到 MySQL 的 `bin` 目录。 3. 输入以下命令启动 MySQL 服务并跳过权限检查: ```bash mysqld --skip-grant-tables ``` 4. 再次打开一个新的命令行窗口,切换到 MySQL 的 `bin` 目录。 5. 输入 `mysql` 命令进入 MySQL 控制台。 6. 使用以下命令连接权限数据库: ```sql USE mysql; ``` 7. 更新 `user` 表中的密码字段: ```sql UPDATE user SET password=PASSWORD("123") WHERE user="root"; ``` 8. 刷新权限以使更改生效: ```sql FLUSH PRIVILEGES; ``` 9. 退出 MySQL 并重新启动 MySQL 服务,使用新的密码登录。 以上方法覆盖了常规和特殊情况下修改 MySQL `root` 用户密码的操作[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值