3 回答
TA贡献1794条经验 获得超8个赞
不要将所有数据库的所有特权授予非root用户,这是不安全的(并且您已经具有该角色的“ root”)
GRANT <privileges> ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
该语句创建一个新用户并为其授予选定的特权。IE:
GRANT INSERT, SELECT, DELETE, UPDATE ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
查看文档以查看所有详细权限
编辑:您可以通过此查询查找更多信息(以“ root”身份登录):
select Host, User from mysql.user;
看看发生了什么
TA贡献1111条经验 获得超0个赞
如果要使用远程计算机(示例工作台)等连接到MySQL,请使用以下步骤消除在安装了MySQL的OS上的此错误
mysql -u root -p
CREATE USER '<<username>>'@'%%' IDENTIFIED BY '<<password>>';
GRANT ALL PRIVILEGES ON * . * TO '<<username>>'@'%%';
FLUSH PRIVILEGES;
尝试登录到MYSQL实例。
这为我消除了这个错误。
TA贡献1789条经验 获得超8个赞
看起来您正在尝试使用户'golden'@'%'成为用户,但名称为'golden'@'localhost'的其他用户正在妨碍/具有优先权。
执行此命令以查看用户:
SELECT user,host FROM mysql.user;
您应该看到两个条目:
1)用户=黄金,主机=%
2)用户=黄金,主机=本地主机
执行以下命令:
DROP User 'golden'@'localhost';
DROP User 'golden'@'%';
重新启动MySQL Workbench。
然后再次执行原始命令:
CREATE USER 'golden'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'golden'@'%';
然后,当您尝试登录MySQL时,请像这样输入:
点击“测试连接”,然后输入密码“密码”。
添加回答
举报