|
本文对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无法把密码清空。 |
|