MySQL的root口令恢复方法总结

来源:百度文库 编辑:神马文学网 时间:2024/04/29 22:11:04
方法一
1   下载MySQL源码分发包,不用区分操作系统,我们需要的东西是一样的;
2   重命名自己的mysql的data目录下的mysql文件夹为oldmysql;
3   将源码包中data目录下的mysql目录复制到你的mysql的data目录下;
4   重新启动mysql,现在mysql的授权关系同全新安装的一样,空密码登陆,然后自行调整授权;
5   打开oldmysql这个库检查到底出现了什么问题 ;
6   如果有备份对系统中原有的数据库进行完整性检测,以免被人修改。
方法二
1. 向mysqld server发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。
kill `cat /mysql-data-directory/hostname.pid`,你必须是Linux的root用户或者是你所运行的SERVER上的同等用户,才能执行这个操作;
killall -TERM mysqld
2. 使用`--skip-grant-tables’ 参数来启动 mysqld;
shell>mysqld_safe --skip-grant-tables &
/ bin/safe_mysqld --skip-grant-tables &
3. 使用`mysql -h hostname mysql’命令登录到mysqld server ,用grant命令改变口令。你也可以这样做:
`mysqladmin -h hostname -u user password ’new password’’。其实也可以用
use mysql; update user set password =password(’yourpass’) where user=’root’ 来做到;
shell>mysqladmin -u root flush-privileges password "newpassword"
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
4. 载入权限表: `mysqladmin -h hostname flush-privileges’ ,或者使用 SQL 命令`FLUSH PRIVILEGES’。当然,在这里,你也可以重启mysqld。
作者:本站综合   更新日期:2005-01-12
来源:internet   浏览次数:
from:http://www.upsdn.net/html/2005-01/319.html