欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mysql忘记root密码怎么办

程序员文章站 2024-02-21 23:03:46
mysql有时候忘记了root密码是一件伤感的事,这种情况下,如何重置root的密码呢? 找到并编辑mysql的my.ini配置文件,在mysqld节点中添加...

mysql有时候忘记了root密码是一件伤感的事,这种情况下,如何重置root的密码呢?

找到并编辑mysql的my.ini配置文件,在mysqld节点中添加上skip-grant-table. 如下:

# these let you safely reset the lost root password.
skip-grant-table

保存好修改,重启mysql服务。

现在就能不需要root密码的情况下连接上数据库。然后执行下面的更新:

use mysql;
update user
set password = password('yournewpasswordhere')
where user = 'root'
and host = 'localhost';

这样root密码就修改好了,这个时候,将my.ini中的skip-grant-table删除,再重启mysql service

下面介绍windows 和 linux 下的密码重置方法。

windows:

  1.以系统管理员身份登陆系统。
  2.打开cmd-----net start 查看mysql是否启动。启动的话就停止net stop mysql.
  3.我的mysql安装在d:\usr\local\mysql4\bin下。
  4.跳过权限检查启动mysql.
  d:\usr\local\mysql\bin\mysqld-nt --skip-grant-tables
  5.重新打开cmd。进到d:\usr\local\mysql4\bin下:
  d:\usr\local\mysql\bin\mysqladmin -u root flush-privileges password "newpassword"
  d:\usr\local\mysql\bin\mysqladmin -u root -p shutdown 这句提示你重新输密码。
  6.在cmd里net start mysql
  7.搞定了。

linux:

mysql root密码的恢复方法之一

如果忘记了mysql root密码,可以用以下方法重新设置:

1. kill掉系统里的mysql进程;

killall -term mysqld

2. 用以下命令启动mysql,以不检查权限的方式启动;
safe_mysqld --skip-grant-tables &

3. 然后用空密码方式使用root用户登录 mysql;

mysql -u root

4. 修改root用户的密码;

mysql> update mysql.user set password=password('新密码') where user='root';
mysql> flush privileges;
mysql> quit

重新启动mysql,就可以使用新密码登录了。

mysqlroot密码的恢复方法二

有可能你的系统没有 safe_mysqld 程序(比如我现在用的 ubuntu操作系统, apt-get安装的mysql) , 下面方法可以恢复

1. 停止mysqld;

sudo /etc/init.d/mysql stop
(您可能有其它的方法,总之停止mysqld的运行就可以了)

2. 用以下命令启动mysql,以不检查权限的方式启动;

mysqld --skip-grant-tables &

3. 然后用空密码方式使用root用户登录 mysql;

mysql -u root

4. 修改root用户的密码;

mysql> update mysql.user set password=password('newpassword') where user='root';
mysql> flush privileges;
mysql> quit

重新启动mysql

/etc/init.d/mysql restart

就可以使用新密码 newpassword 登录了。