Windows如何修改MySQL用户root密码

本文介绍四种修改MySQL密码的方法,包括使用SET PASSWORD命令、mysqladmin工具、直接更新user表及忘记密码时的解决办法。

   MySQL是一个关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。搭配 PHP 和 Apache 可组成良好的开发环境。因此用的很广泛。很多人都会遇到MySQL需要修改密码的情况,比如密码太简单、忘记密码等等。这里我就教大家几种修改MySQL密码的方法。这里以修改root密码为例,操作系统为windows。

先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, 所以一般用户无法更改密码,除非请求管理员。

方法一 :用SET PASSWORD命令

1、打开终端win+r输入cmd回车即可打开;

2、通过mysql -u用户名 -p指定root用户登录MySQL,输入后回车会提示输入密码。

3、修改MySQL的root用户密码,格式:mysql> set password for 用户名@localhost = password('新密码');

 例子:mysql> set password for root@localhost = password('shapolang'); 例子将用户root的密码更改为shapolang ;

重新登录,输入新密码shapolang就ok了;




方法二:用mysqladmin

1、打开终端win+r输入cmd回车即可打开;

2、修改MySQL的root用户密码格式:mysqladmin -u用户名 -p旧密码 password 新密码 例子:mysqladmin -uroot -pshapolang password 123456

上面例子将用户root原来的密码shapolang改为新密码123456

重新登录,输入新密码123456就ok了;


方法三:用UPDATE直接编辑user表

1、首先登录MySQL。

2、 连接权限数据库: use mysql; 。3、改密码:update user set password=password("shapolang") where user="root";(别忘了最后加分号) 。 4、刷新权限(必须步骤):flush privileges;

重新登录,输入新密码shapolang就ok了;


方法四: 忘记root密码的时候

1、关闭正在运行的MySQL服务。

2、打开DOS窗口,转到mysql\bin目录。 

3、 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。 

4、再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >。 

6、连接权限数据库: use mysql; 。

 7、改密码:update user set password=password("root") where user="root";(别忘了最后加分号) 。 

8、刷新权限(必须步骤):flush privileges; 。 

9、退出  quit。

重启mysql服务,使用用户名root和刚才设置的新密码root登录就ok了;


注意:

mysql相关命令如果无法执行,可以将命令所在目录加入环境变量中,或者进到命令所在目录再执行

### 如何在 Windows修改 MySQLRoot 用户密码 当忘记或需要更改 MySQL root 密码时,可以通过安全模式启动 MySQL 来重置密码。以下是具体操作方法: #### 1. 停止 MySQL 服务 打开命令提示符并输入以下命令来停止正在运行的 MySQL 服务: ```cmd net stop mysql ``` #### 2. 启动 MySQL 安全模式 在同一窗口中继续执行下面这条语句,在不加载授权表的情况下启动 MySQL: ```cmd mysqld --skip-grant-tables ``` 这一步允许绕过权限验证直接访问数据库。 #### 3. 打开新命令行窗口连接到 MySQL 由于已经在跳过了授权表的状态下运行了服务器,现在可以无需提供任何凭证就能登录: ```cmd mysql -u root ``` #### 4. 修改 root 用户密码 进入 MySQL 控制台之后,通过更新 `user` 表中的记录设置新的 root 密码: 对于 MySQL 本低于 5.7 使用如下 SQL 语句[^1]: ```sql FLUSH PRIVILEGES; SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password'); ``` 而对于本等于或高于 5.7,则应采用此方式: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; FLUSH PRIVILEGES; ``` #### 5. 关闭 MySQL 并恢复正常工作状态 完成上述步骤后,先退出当前会话再关闭 MySQL 进程: ```cmd exit; /* 用于退出 MySQL shell */ taskkill /F /IM mysqld.exe /* 终止所有名为 mysqld 的进程 */ ``` 最后重新开启 MySQL 服务使其恢复常规运作: ```cmd net start mysql ``` 此时应该能够使用刚刚设定的新密码正常登陆 MySQL 数据库管理系统了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值