MySQL密码忘了怎么办

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL密码忘了怎么办相关的知识,希望对你有一定的参考价值。

MySQL密码忘了的操作:

1.关闭MySQL数据库,因为root密码忘记了,mysqladmin无法使用,此时,只能通过killpid关闭程序。在这里,科普一下kill和kill-9的区别默认参数下,kill发送SIGTERM信号给进程。

告诉进程,你需要被关闭,请自行停止运行并退出。kill-9发送SIGKILL信号给进程,告诉进程,你被终结了,请立刻退出。与SIGTERM相比,这个信号不能被捕获或忽略,同时接收这个信号的进程在收到这个信号时不能执行任何清理所以。

万不得已,不要通过kill-9杀掉进程,这可能导致MySQL数据库的物理结构损坏,无法重新启动。

2.在my.cnf文件部分添加skip-grant-tables参数。

3.登录数据库,修改root账户的密码以下是修改root密码的三种方式:

1>mysql>setpasswordfor'root'@'localhost'=password('123')。无需刷新权限表。

2>mysql>updatemysql.usersetpassword=password("456")whereuser="root"andhost="localhost"。

mysql>flushprivileges;3>#mysqladmin-urootpassword"123"。

4.关闭数据库,注释掉skip-grant-tables参数,重新启动数据库。上面这种方式虽然不错,但是有个问题,你必须重启数据库,对于线上环境,这可能是不被允许的。

参考技术A

首先启动命令行

1.在命令行运行:taskkill /f /im mysqld-nt.exe

下面的操作是操作mysql中bin目录下的一些程序,如果没有配置环境变量的话,需要切换到mysql的bin 目录下执行如下语句。不然无效

2.继续在命令行运行:mysqld-nt --skip-grant-tables

3.新开一个命令行运行:mysql -u root   (如果没有配置mysql的bin环境变量的话需要切换到bin目录下执行此语句)

如果不想改密码,只是想看原来的密码的话。可以在命令行执行这个语句

select host,user,password from mysql.user;//即可查看到用户和密码

如果要修改密码的话,在命令行下执行下面的语句

update mysql.user set password='这里填写你要设置的密码'  where user='root';

完成这些操作后,继续在命令行运行

taskkill /f /im mysqld-nt.exe;//安全着想,先结束,因为现在这样是可以用mysql -u root 直接登录的

net start mysql;//启动mysql服务

参考技术B 联系你购买空间的那个网站的客服,如果是数据库密码忘了就进独立界面点击Home—Mysql—删掉之前的数据库,重新生成一个,希望对你有用

mysql忘了密码,怎么修改密码

参考技术A 打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址

2
打开cmd命令提示符,进入上一步mysql.exe所在的文件夹。

3
输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的命令行。注意:在输入此命令之前先在任务管理器中结束mysqld.exe进程,确保mysql服务器端已结束运行。

然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库。

输入show databases; 可以看到所有数据库说明成功登陆。

其中mysql库就是保存用户名的地方。输入 use mysql; 选择mysql数据库。

show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。

输入select user,host,password from user; 来查看账户信息。

更改root密码,输入update user set password=password('123456') where user='root' and host='localhost';

再次查看账户信息,select user,host,password from user; 可以看到密码已被修改。

退出命令行,重启mysql数据库,用新密码尝试登录。

测试不带密码登录mysql,发现还是能够登陆上,但显示数据库时只能看到两个数据库了,说明重启之后跳过密码验证已经被取消了。

我这地方重启数据库之后之所以不带密码任然能够登录是因为我的数据库里存在设无须口令的账户。

以上是关于MySQL密码忘了怎么办的主要内容,如果未能解决你的问题,请参考以下文章

mysql忘了密码,怎么修改密码

windows mysql密码忘了怎么办

mysql 改了密码忘了怎么办

Navicat MySQL里的root密码忘了怎么办???

mysql修改用户加密的密码忘了怎么办

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