安装mysql的时候,我们会创建MySQL User Accounts(非根)用户账户ggs。其目的是便于数据库权限管理,为远程访问者提供安全账户,但是一般情况下本地使用这个用户账号访问数据库会提示
ERROR 1045 (28000): Access denied for user 'ggs'@'localhost' (using password: YES)`
结果是无论如何都提示登录被拒绝。
再次使用ggs账户登录数据库,这次使用空密码尝试
登录成功
这里可以发现,我使用’ggs’@‘localhost’这个账户登录数据库(因为在本地登陆时没指定主机,默认是以localhost登录),但是数据库使用的是’’@‘localhost’这个账户来进行登录认证,而’’@'localhost’这个匿名用户是没有密码的,因此我输入空密码登录成功了。但是登录后,所对应的用户的匿名用户。
解决办法,root登录,mysql数据库里执行
DROP USER ''@'localhost';
参考文档参考