mysql跳过授权表进入服务

Posted 栲霓杞蛙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql跳过授权表进入服务相关的知识,希望对你有一定的参考价值。

1.mysql服务是通过mysqld进程提供的

我们可以直接双击mysqld.exe或者在cmd模式下输入mysqld。两种操作都会在后台创建mysqld进程

创建好mysqld.exe进程后,我们就可以登录mysql了。

2.在cmd模式下,我们还可以输入: mysqld --install mysql5.7.14。这种方式的作用是启动mysqld服务,同时将服务注册到系统服务列表中,名字叫做mysql5.7.14。那么以后,我们启动mysql服务时就不需要按路径找到mysqld.exe文件了。mysql服务会随系统的启动而自行判断是否需要启动。

启动类型有:自动,手动,禁用。

3.我们可多次

  mysqld --install a

  mysqld --intall b

  mysqld --install c

这只是将mysql服务注册多个名字而已,真正起作用的还是mysqld.exe进程。而这个进程是唯一的,也就是说启动a服务后,会创建mysqld.exe进程,然后b,c服务都不能被启动。

4.跳过授权表登录mysql

在输入以上命令启动mysql服务前,先保证已经关闭了mysql服务,任务管理器中没有mysqld.exe进程

输入以上命令后,不要关闭窗口,保持mysql服务的运行,关闭了就结束服务了。

重新打开新窗口,在窗口按路径找到mysql.exe所在位置,输入mysql命令就成功登录了

因为mysql的一系列授权表不会加载进内存,mysql的登录也就不需要用户名和密码了

登录之后使用update语句修改mysql.user表的authentication_string值

记得flush privileges让内存重新加载授权表,这样root用户的密码就重新被设置了。

5.修改root密码除了上面的--skip-grant-tables外,还可以直接修改mysql的配置文件

将skip-grant-table前面的分号去掉就可以了,但是这种方式是永久性的。一旦修改配置表,那么以后每次登陆都不需要用户和密码了,所以改完之后最好改回来

 6.mac中

mysqld_safe --skip-grant-tables跳过授权表启动mysql服务

以上是关于mysql跳过授权表进入服务的主要内容,如果未能解决你的问题,请参考以下文章

MySQL授权用户及密码恢复设置

mysql密码重置

Mysql忘记密码,支持中文,tab补全

MySQL忘记密码的解决方案

MySQL忘记密码的解决方案

MySQL忘记root密码