windows下mysql8忘记root密码,如何重设密码,以及mysql驱动下载

本文介绍如何在Windows环境下安装MySQL服务,并提供忘记密码后的重置步骤。通过修改my.ini配置文件并利用特定SQL语句来实现密码的更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql各个版本的驱动下载:http://central.maven.org/maven2/mysql/mysql-connector-java/ 

添加windows下mysql服务

以管理员身份打开cmd,执行

mysqld --install

net stop mysql

# 忘记密码找回

找到mysql数据库中的my.ini配置文件,登录跳过密码验证,增加字段skip-grant-tables然后保存

skip-grant-tables

# 启动mysql服务

net start mysql
打开mysql目录窗口,找到bin目录下面的mysql.exe文件,以管理员身份运行

在打开的窗口中输入密码重置代码

mysql>use mysql

mysql>update user set authentication_string=password("123456") where user="root";

最后将配置文件修改过来,注销skip-grant-tables即可,#skip-grant-tables然后保存。重启mysql服务

mysql

注意:mysql8的忘记密码修改形式如下:http://baijiahao.baidu.com/s?id=1603874060680405968&wfr=spider&for=pc

### 如何在 Linux 系统中重置 MySQL密码 如果忘记MySQL 在 Linux 环境下的 `root` 密码,可以通过以下方法完成密码的重置。以下是详细的说明: #### 停止 MySQL 服务 首先需要停止正在运行的 MySQL 服务。可以使用以下命令来实现: ```bash sudo systemctl stop mysqld ``` 这一步是为了确保在修改配置文件期间不会有任何冲突发生[^1]。 #### 编辑 MySQL 配置文件 编辑 `/etc/my.cnf` 文件,在 `[mysqld]` 节点下添加一行 `skip-grant-tables` 来跳过权限验证表: ```bash vim /etc/my.cnf ``` 添加的内容如下所示: ``` [mysqld] skip-grant-tables ``` 保存并退出编辑器。 #### 启动 MySQL 服务 再次启动 MySQL 服务以使更改生效: ```bash sudo systemctl start mysqld ``` 此时由于启用了 `skip-grant-tables` 参数,MySQL 将不再强制执行身份验证过程[^3]。 #### 登录到 MySQL重设密码 通过无密码方式登录到 MySQL 数据库: ```bash mysql -u root -p ``` 输入任意密码或者直接按 Enter 键继续。一旦进入 MySQL 控制台,就可以更新 `root` 用户的密码了。对于 MySQL 版本低于 8.0 的情况,可以使用下面这条 SQL 查询语句: ```sql UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES; EXIT; ``` 而对于 MySQL 8.0 及以上版本,则应采用更安全的方式设定密码,因为旧版函数已被弃用。新的语法应该是这样的形式: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES; EXIT; ``` 注意这里的 `'新密码'` 应替换为你实际想要设置的新密码字符串[^2][^4]。 #### 恢复原始状态 最后一步是要恢复原来的 MySQL 工作模式——即移除之前临时加入的 `skip-grant-tables` 行,并重新加载服务让其正常工作。 回到 `/etc/my.cnf` 中删除刚才增加的那一行内容;随后再重启一次 MySQL 服务即可恢复正常运作状况: ```bash sudo systemctl restart mysqld ``` 至此整个流程结束,现在应该能够凭借刚刚创建好的全新管理员账户凭据顺利连接至数据库实例上了! ```python # 示例 Python 脚本用于测试连接 (需安装 pymysql 或其他驱动程序) import pymysql.cursors connection = pymysql.connect(host='localhost', user='root', password='新密码', # 替换为您的真实密码 cursorclass=pymysql.cursors.DictCursor) try: with connection.cursor() as cursor: sql_query = "SHOW DATABASES;" cursor.execute(sql_query) result_set = cursor.fetchall() finally: connection.close() print(result_set) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT界的小小小学生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值