在 create database mytestsql 时出现错误:
ERROR 1044(42000): Access denied for user ''@'localhost' to database ‘mytestsql’
错误根本原因:使用了 administrator 用户登陆,但该用户只有 usage 权限,没有 create 的权限。
解决方法(亲测解决):
应该使用mysql的默认用户名‘root’进行登陆:
使用管理员账户执行cmd,输入:mysql -hlocalhost -uroot -p
其中-h表示服务器名,localhost表示本地;-u为数据库用户名,root是mysql默认用户名;-p为密码,如果设置了密码,可直接在-p后链接输入,如:-p123456,用户没有设置密码,显示Enter password时,直接回车即可。
这时,再查看权限:
此时的 root 用户具有所有权限,可以创建 database。
以下是解决过程中尝试过的方法:
解决方法(未解决):
通过 DbVisualizer 修改 Authentication 的 Database userid 为 administrator
均未成功,error1109(42S02): Unknown table 'user' in information_schema
检查发现没有mysql这个database,里面更没有 user这个表。创建新的 database,又会出现没有权限创建。
办法二(未解决,但找到了问题的根本原因):
显示没有权限赋予权限... error1045(28000)