作者:PN喜欢建设城市ae | 来源:互联网 | 2022-12-15 19:10
我通常会正确设置MySQL以进行远程访问。
目前,我陷入了MySQL 8的困境。
第一件事是在mysql.conf.d / mysqld.cnf上,我没有任何绑定地址行,因此我手动添加了它(绑定地址0.0.0.0),并授予了对用户的访问权限'%'
当我连接时,我收到消息“身份验证失败”
但它在localhost /命令行上运行良好
1> rbz..:
怎么做:
bind_address
从my.ini
文件中删除或注释该参数。
(文件名称因操作系统而异。在Linux上,my.ini实际上是位于目录/ etc / mysql /中的my.cnf)
重新启动服务。
创建root
用户(是的,是新用户,因为存在的是“ root @ localhost”,仅本地访问):
CREATE USER 'root'@'%' IDENTIFIED BY '123';
赋予特权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
对于DBA用户,请WITH GRANT OPTION
在最后添加。
因为它不能用GRANT创建?
MySQL 8无法再使用创建用户GRANT
,因此,IDENTIFIED BY '123'
如果尝试将其与结合使用会GRANT
出现错误,这是最常见的错误。