mysql数据库密码忘了怎么重置

mysql数据库密码忘了怎么重置,第1张

开始--》运行--》cmd

进入mysql安装目录的bin文件夹(客户都没设置环境变量找不到mysql命令只能到那个目录)

比如:D:\Program Files\MySQL\MySQL Server 5.0\bin>

1.暂停mysql服务;

2.忽略授权问题;

3.另一个命令行进去myql;

4.重置root密码并刷新授权表;

5.任务管理器杀掉mysql进程;

6.重启mysql服务;

>net stop mysql

>mysqld --skip-grant-tables

开另外一个命令行窗口,一样进入那个目录

>mysql -u root -p

>update mysql.user set password=PASSWORD("新密码") where User="root"

>flush privileges

任务管理器杀掉mysql进程

>net start mysql

#################################################################

vi /etc/my.cnf 在[mysqld]添加

skip-grant-tables

/etc/init.d/mysql restart

mysql

>update mysql.user set password=PASSWORD("新密码") where User="root"

>flush privileges

/etc/init.d/mysql restart

简单情况下:进入原来mysql安装路径下的data文件夹下,找到相应的库和ibdata1,进行copy,就可回复原来的数据

复杂情况下:

从另一台机上把MySQL数据库的mysql文件夹拷贝到本地机上,目的是恢复本地机对数据的访问和 *** 作。经过如下几种情况的 *** 作。

1. 在本地重装MySQL(安装目录D:\Program Files\MySQL\MySQL Server 5.0),直接把mysql文件夹拷贝至D:\Program Files\MySQL\MySQL Server 5.0\。结果,失败:数据库连接错误。

2. 卸载后重装MySQL,将D:\Program Files\MySQL\MySQL Server 5.0\下的数据备份,只把mysql\data文件夹全部内容拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data下。结果,失败:数据库连接错误。将备份的数据还完覆盖。结果,失败,还是连接不上数据库。

3. 卸载后重装MySQL,将mysql\data文件夹里的cf1,last文件夹(这两个是原来MySQL里的数据库)拷贝进D:\Program Files\MySQL\MySQL Server 5.0\data。连接成功,在Navicat for MySQL里看到数据库cf1和last,但是不能访问,因为数据全为零。明白了原来data里以数据库命名的文件存储的是数据库的表结构,不是元数据。下一步,把data文件夹里的ibdata1文件(3.4G大,明显存储了元数据)拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data里,代替原来的ibdata1文件。重启电脑,打开Navicat for MySQL,连接成功,数据可以访问 *** 作。

至此, *** 作终于成功。其实当初在那台机上把数据导出来,而不是现在直接把文件夹mysql复制过来会更容易恢复。但那台机已经重装了系统,也就是说MySQL失效了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6095658.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存