mysql 忘记root密码重置方法

很多时候,可能会由于各种原因,而致到我们忘记了mysql的超级管理员root的密码,此文章,教你如何恢复,无需重置数据库,不丢失现在数据

mysql 最高用户权限,是root,但密码,和linux系统root的密码,不是一个密码,是两回事情,有时候,我们经常忘了mysql 的root密码,怎么办,就来重置吧。很简单,步骤如下:

1:第一步,停止正常的mysql服务

2:以跳过权限表的方式,启动mysql

3:使用update更新user表,以更改密码

4:结束跳过权限表的启动,更改为正常的启动方式

停止mysql 服务

/etc/init.d/mysql stop   #有些人安装的时候,这个脚本名字改成了 mysqld 这样的话,这里就要改为mysqld,yum就是mysqld

跳过权限表的方式,来启动mysql,如果是源代码方式编译安装的mysql,而又放到了非常规目录,又没有做bin目录的软连接或者复制到,则需要写完整的路径,本次环境就是非常规路径,mysql 以源代码方式编译安装到了 /usr/local/mysql 目录下,使用如下命令跳过权限表启动,实际情况,请根据你的环境,更改路径。(yum安装的,可直接执行 mysqld_safe –skti-grant-tables,不需要加全路径)

/usr/local/mysql/bin/mysqld_safe --skip-grant-tables

使用空密码,进入到mysql 命令行,并执行一个条update 命令

mysql -u root
   update mysql.user set password=PASSWORD('newpassword') where user='root';

执行成功后,使用 exit 退出mysql命令行,kill掉mysql进程,并重新启动

killall mysqld
/etc/init.d/mysql start

完成后,就可以使用新密码来登录mysql 数据库了

那么在 win平台的mysql该如何,其实是一样的

停止服务,进入到mysql 安装目录的 bin 目录下边,使用 mysqld_safe –skip-grant-tables 启动后,进入mysql 命令行,再执行以上的update 命令,完事以后,打开任务管理员,把mysql的进程结束掉,再用服务管理器,启动服务。这里不再详细描述。

 

猜您喜欢