当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL数据库的root口令恢复方法总结

MYSQL
Mysql数据库常见的“#1251”錯誤分析
SQL 查询语句积累
MyGeneration连接MySql数据库的解决办法
新手扫盲:MySQL入门基础知识简介
如何在MySQL中获得更好的搜索结果
浅谈如何应用JDBC连接数据库MySQL
实际应用:MySQL5存储过程的编写实践
MySQL5的异常处理
SQL查询语句精华使用简要
MySQL数据库基础:数据类型及列类型
MySQL 忘记口令的解决办法
MySQL账户相关
MySQL存在权限提升及安全限制绕过漏洞
MySQL手册版本 5.0.20-MySQL优化(六)
新手入门--全面介绍MySQL的基础应用
一步步教你在Windows环境下安装MySQL
MySQL手册版本 5.0.20-MySQL优化(一)
MySQL手册版本 5.0.20-MySQL同步(三)
SQL查询语句对象化的实现(C#)
真的? MySQL被计划转为Linux文件系统

MYSQL 中的 MySQL数据库的root口令恢复方法总结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 74 ::
收藏到网摘: n/a

方法一

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。