mysql 总是以匿名_解决windows下的mysql匿名登陆无法使用mysql数据库的问题

这篇博客讲述了作者在Windows上安装MySQL后遇到无需密码即可登录的问题。通过关闭mysqld.exe进程,并使用mysqld --skip-grant-tables命令绕过权限检查,作者成功进入MySQL并能查看及修改root用户的密码。博客提供了详细的操作步骤,包括如何启动MySQL服务、进入mysql数据库以及更新root账户密码。
摘要由CSDN通过智能技术生成

我在windows下安装了mysql,但是不用密码就能登进去,而root明明是有密码的,我用select

user()命令查看当前登录用户是root。

查看数据库,只能看到自带的两个数据库(information_schema和test),mysql这个数据库都看不到。如果运行use mysql,就会出现

Access denied for user ‘‘@‘localhost‘ to database ‘mysql‘,

这说明这是匿名登录的,几乎什么权限都没有。即使用mysql -u root登录也是提示这个。

网上搜了很多资料,大多数是教的怎么在linux下解决这个问题。

我综合了大多数的方法,自以为找到了解决的办法:

1.首先,网上的资料都提到了需要关闭mysqld这个服务来屏蔽权限检查,我查看了任务管理器,发现的确有一个叫mysqld.exe的程序在运行:

20180927202156152907.jpg

我直接关闭这个进程。

我查阅了帮助手册,”MySQL服务器也就是mysqld,是在MySQL安装中负责大部分工作的主程序。服务器随附了几个相关脚本,当你安装MySQL时它们可以执行设置操作,或者是帮助你启动和停止服务器的帮助程序。“

我估计它相当于mysql的守护进程,不停止它就无法设置启动脚本。

2.网上都提到了

mysqld-nt --skip-grant-tables

mysqld_safe --skip-grant-tables

safe_mysqld --skip-grant-tables

等关闭权限检查的方法,但是我在CMD命令提示符下输入都提示:“mysqld_safe”不是内部或外部命令,也不是可运行的程序或批处理文件。

于是我查看mysql安装目录下的bin文件夹里有哪些相关的文件:

(1)mysqld.exe (2)mysqld_multi.pl

我查看了帮助手册,“在Unix和NetWare中推荐使用mysqld_safe来启动mysqld服务器。mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息。为了保持同旧版本MySQL的向后兼容性,MySQL二进制分发版仍然包括safe_mysqld作为mysqld_safe的符号链接。默认情况下,mysqld_safe尝试启动可执行mysqld-max(如果存在),否则启动mysqld。”

我估计mysqld_safe是mysqld.exe文件里的一个启动选项。所以我尝试了这样输入:

先跳转到mysql的bin目录下,再输入mysqld

--skip-grant-tables。这时候有可能一直没有反应的样子,不会生成新的一行输入。

20180927202156518156.jpg

实际上它已经停止了权限检查,我们可以进行其他操作了。

3.重新打开一个cmd命令提示符窗口,进入到mysql里面,然后输入use mysql,就会发现成功了!:

20180927202156574799.jpg

看到没?上面最后一行提示的是Database changed!!

如果你输入show tables就会看到这个数据库下有个表叫user,记录了登陆的账户名和密码。

所以你可以这样修改root账户的密码:

UPDATE user SET Password=PASSWORD(‘123‘) WHERE

user=‘root‘;

20180927202156726172.jpg

这时你使用MySql Command Line Client登陆的话,就会要求输入密码123了!你已经不是匿名登陆,所以可以进行各种操作了!!!

原文:http://www.cnblogs.com/bangbangjiang/p/3564321.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值