百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

全网最详细解决Windows下Mysql数据库安装后忘记初始root 密码方法

wptr33 2025-02-16 23:09 17 浏览

一、准备重置 root的初始化密码

 Win+R   键启动命令输入窗口 ; 输入 cmd 打开命令执行窗口 ;
 ##界面如下##
输入命令:net stop mysqld   #此操作会停止当前运行的MySQL服务
##界面如下##
【
		注意:此时出现了【服务名无效】的错误。
    
		原因:当Windows命令窗口执行【net start +服务名】此类命令时,启动的是win下注册的服务。
              我们在执行MySQL数据库默认安装程序时,并没有直接将mysql服务在系统中注册。
              即:当前默认路径下无法找到mysql服务。
】

解决上面出现的【服务名无效】问题,步骤如下:
	1)首先,定位到MySQL数据库默认安装的盘符路径(具体根据自己安装时的路径进行查找);
  ##如图例:我的默认安装在C盘##

2)执行命令注册服务: mysqld --install
【
		注意:此时有可能会遇到两种情况
    	a)服务注册成功:出现 Service successfully install!
      
      b)服务注册失败:出现 Install/Remove of the Service Denied!
 】

注意:出现服务注册失败时,则表明你没有使用管理员身份运行DOS窗口!!!

如何以管理员身份打开DOS命令窗口:
	1)操作如图一,直接以管理员方式运行DOS命令窗口;
  
  2)打开盘符路径:C:\Windows\System32,右上角输入框搜索 cmd.exe
 			 创建cmd.exe可执行文件的桌面快捷方式,更改默认【以管理员方式运行】,方便长期使用


执行MySQL服务启动命令: net start mysql

注意:执行命令时,出现如下图所示的错误时,请按照以下操作步骤进行

1)执行命令 mysqld --initialize 在当前路径下重新生成 data 文件夹

2)执行MySQL服务启动命令: net start mysql

至此:服务正常启动,可进行下一步密码重置操作。


二、重置初始化 root密码

1、停止当前已经启动的MySQL服务:net stop mysql

2、跳过权限检查直接登录服务:  mysqld --skip-grant-tables  
【  
     注意:实测 MySQL 8.0 以上版本使用 mysqld --skip-grant-tables 此命令无效
               MySQL 8.0 下执行此命令后,再执行 mysql -u root 则会出现此类错误 :
    ERROR 2003 (HY000):  Can't connect to MySQL server on 'localhost:3306' (10061) 
】
     或者  mysqld --console --skip-grant-tables --shared-memory 命令启动数据库
【
		注意:执行完以上两个命令后,不要再对此窗口进行任何操作;
							以管理员的方式重新打开一个新的命令窗口,输入命令
							cd C:\Program Files\MySQL\MySQl Server 8.0\bin 
              重新进入MySQL的bin目录
 】
 3、输入命令无密码直接登录: mysql -u root -p
4、访问权限数据库  use mysql

5、先将 root 原始密码重置为空:update user set authentication_string='' where user='root';

至此,我们已经将权限密码重置为 空的状态。此时,我们退出MySQL数据库,关闭MySQL服务,关闭所有打开的DOS命令窗口。用管理员权限重新打开一个新的命令窗口。

6、使用重置后的权限密码登录,重置为空,则登陆时不需要输入密码。
【注意,这一步的密码为空是我们重置后的结果;而不是跳过权限检查不需要输入密码
(mysqld --console --skip-grant-tables --shared-memory)】

7、修改我们想要的任意密码:alter user 'root'@'localhost' identified by '新密码';

8、切记!切记!完成以上步骤后刷新权限表: flush privileges;

以上,便是基于Windows系统下,MySQL8.0以上版本忘记root 初始化密码修改全过程。亲测完全可行。有更便捷高效的方法欢迎多多交流。

相关推荐

威信Chronosonic XVX全新旗舰全球首发 设计特点彻底公开

第一眼看到WilsonAudio新推出的ChronosonicXVX音箱,相信大家都会直觉认为它是两年前超级旗舰WAMMMasterChronosonic的缩小版,不过这个推测并不完全正确。C...

C#高精度Timer和Delay以及时间测量

在PCHMI7.0后在工具箱里会多一个MsTimer,以及Delay和Microsecond两个类。...

python教程从基础到精通,第9课—日期与时间

Hello,小伙伴们,祝大家五.一玩得快乐!刚学习完了七大数据类型,今天咱们来学习日期与时间的表示方法。Python标准库中提供了时间和日期的支持:calendar:日历相关;time、datetim...

软件测试|教你轻松玩转Python日期时间

Python基础之日期时间处理...

Go语言中互斥锁与读写锁,你知多少?

简述Golang中的锁机制主要包含互斥锁和读写锁互斥锁互斥锁是传统并发程序对共享资源进行控制访问的主要手段。在Go中主要使用sync.Mutex的结构体表示。一个简单的示例:funcmutex()...

变形金刚动画大电影——经典台词赏析

YOURDAYSARENUMBEREDNOW,DECEPTI-CREEPS你们活不了多久了,霸天虎小子。-{铁皮说的话,体现了铁皮的嫉恶如仇,可是后来铁皮在飞船上遇袭身亡,可谓是出师未捷身先...

Python时间日期模块使用教程(python3日期)

1.时间日期处理概述在日常编程中,时间日期处理是非常常见的需求,比如:记录日志时间...

亚马逊介绍AWS“无服务器”云服务改进:数据库可线上扩充容量等

IT之家11月29日消息,在今天于美国拉斯维加斯展开的亚马逊“AWSre:Invent2023”活动中,亚马逊计算部门资深副总裁PeterDeSantis,介绍了旗下三款云端服务,IT...

2.日期格式 datetime(日期时间显示格式)

fromdatetimeimportdatetime1.获取当前日期和时间now=datetime.now()#2025-05-3110:56:01.4687822.格式化日期...

【科普】时间单位大盘点(时间单位都有哪些?)

时间单位,是7种基本单位之一,长度、时间、质量、物质的量、光照度、电流和(热力学)温度是七种基本单位。本词条中时间单位以时间从大到小列。今天我们来盘点下时间的单位换算...

基于PHP的Laravel框架,盘点Github高星Web管理后台,效率为王!

在Web开发工作中,选择一个高效、稳定的后台管理系统是提高开发效率的关键。虽然PHP在近些年中的热度有所减退,但其上手简单、开源、灵活且被广泛应用的特点,仍然使其在编程语言排行榜中保持前十的位置。这表...

如何使用PHP编写一个简单的留言板?

留言板是一个常见的Web应用程序,允许用户在网站上发布和查看留言。在本文中,我们将使用PHP编写一个简单的留言板,介绍构建过程中的关键步骤和技巧。一、准备工作在开始编写留言板之前,我们需要准备好以下工...

产品经理提需求时要考虑的 15 个隐性需求

虽然世界充满未知的变化,但是有一些大的方向还是可以把握的,本文跟大家谈谈产品经理提需求时要考虑的15个隐性需求,enjoy~俗话说,计划赶不上变化快,无论需求文档做得如何细致,考虑得如何周全,总会...

关于 PHP 启动 MongoDb 找不到指定模块问题

前言:最近有一个小demo,需要通过PHP将用户行为记录储存到MongoDB,再用Spark做协同过滤。由于以前处理跨语言交互是通过消息中间件,这次本地使用MongoDB却弄出了几个问...

PHP程序员老鸟面试经历(php程序员怎么样)

在任何时代找任何工作都有面试这么一说的。特别是高端技术类的工种对技术理论和技术实操能力要求很严格。大部分公司招收技术员工的要求也越来愈高。至于PHP程序员也是如此,我估计大多数PHP老鸟已经不在意所...