Mysql的Root密码遗忘的解决办法
Windows |
如果忘记了 MySQL 的 root 密码,可以用以下方法重新设置: 1. KILL掉系统里的MySQL进程,方法如下: 2. 在命令行中输入命令 mysqld-nt --skip-grant-tables 启动MySQL,以不检查权限的方式启动;
3. 然后另外开一窗口,用空密码方式使用root用户登录 MySQL; 4. 修改root用户的密码; mysql> update mysql.user set password=PASSWORD("新密码") where User="root"; 5. 重新启动MySQL,就可以使用新密码登录了。 |
----------文字版---------------
打开命令行窗口,停止mysql服务: Net stop mysql
启动mysql,一般到mysql的安装路径,找到 mysqld-nt.exe
执行:mysqld-nt --skip-grant-tables 当前窗口将会停止。
另外打开一个命令行窗口,执行mysql 如果提示没有这个命令,先进入MYSQL的安装位置下BIN目录再运行mysql
>use mysql
>update user set password=password("") where user="root";
>flush privileges;
>exit
用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,在重新启动mysql-nt服务,就可以用新密码登录了
----------------------------------------------------CenOS 下------------------------------------------------
1、首先停止正在运行的MySQL
进程
Linux下,运行 killall -TERM mysqld
Windows下,如果写成服务的 可以运行:net stop mysql
,如未加载为服务,可直接在进程管理器中进行关闭。
2、以安全模式启动MySQL
Linux下,运行 /usr/local/mysql
/bin/mysqld_safe --skip-grant-tables &
Windows下,在命令行下运行 X:/MySQL
/bin/mysqld-nt.exe --skip-grant-tables
3、完成以后就可以不用密码进入MySQL
了
Linux下,运行 /usr/local/mysql
/bin/mysql
-u root -p 进入
Windows下,运行 X:/MySQL
/bin/mysql
-u root -p 进入
4、更改密码
>use mysql
>update user set password=password("新密码") where user="root";
>flush privileges;
---------------------------------------------------Linux下的情况------------------------------------------
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL ,用正常方法启动 MySQL 。