|  | 
 
| 本文对MySQL密码恢复和修改的各种方法进行了总结,包括普通用户密码以及ROOT用户密码的恢复和修改,希望能够对您有所帮助。 
 我们知道,为MySQL数据库设置密码是为了提高MySQL数据库的安全性,但如果我们不小心忘掉了MySQL密码,这时候无法登录MySQL数据库了,为我们的使用带来很多不便。因此,掌握MySQL数据库的密码恢复方法和修改方法是非常必要的。本文我们主要就总结了MySQL数据库的密码恢复和修改的几种方法,接下来我们就一起来了解这部分内容。
 
 一. MySQL密码的恢复方法
 
 如果忘记了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,就可以使用新密码登录了
 
 二.MySQL密码的修改方法
 
 方法一:
 
 1、编辑MySQL配置文件:
 
 windows环境中:%MySQL_installdir%my.ini //一般在MySQL安装目录下有my.ini即MySQL的配置文件。
 
 linux环境中:/etc/my.cnf
 
 在[MySQLd]配置段添加如下一行:
 
 skip-grant-tables
 
 保存退出编辑。
 
 2、然后重启MySQL服务
 
 windows环境中:
 
 net stop MySQL
 
 net start MySQL
 
 linux环境中:
 
 /etc/init.d/MySQLd restart
 
 3、设置新的ROOT密码
 
 然后再在命令行下执行:
 
 MySQL -uroot -p MySQL
 
 直接回车无需密码即可进入数据库教程了。
 
 现在我们执行如下语句把root密码更新为 123456:
 
 update user set password=PASSWORD("123456") where user='root';
 
 quit 退出MySQL。
 
 4、还原配置文件并重启服务
 
 然后修改MySQL配置文件把刚才添加的那一行删除。
 
 再次重起MySQL服务,密码修改完毕。
 
 方法二:
 
 mysql> Insert INTO mysql.user (Host,User,Password)   VALUES(’%’,’xtjc’,PASSWORD(’xtjc’));   mysql> FLUSH PRIVILEGES
 
 确切地说这是在增加一个用户,用户名为xtjc,密码为xtjc。在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
 
 注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。
 
 方法三:
 
 使用mysqladmin,这是前面声明的一个特例。
 
 mysqladmin -u root -p password mypasswd
 
 输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。把命令里的root改为你的用户名,你就可以改你自己的密码了。
 
 当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,那么这种方法就是无效的,而且mysqladmin无法把密码清空。
 | 
 |