首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql 8远程访问

Mysql 8远程访问
EN

Stack Overflow用户
提问于 2018-05-29 00:44:15
回答 4查看 52.5K关注 0票数 24

我通常设置正确的MySQL来进行远程访问。

目前,我被MySQL 8卡住了。

第一件事是,在mysql.conf.d/mysqld.cnf上,我没有任何绑定地址行,所以我手动添加了它(bind-address 0.0.0.0),并授予'%‘上的用户访问权限。

当我连接时,我收到消息“身份验证失败”

但它在本地主机/命令行上工作得很好

EN

回答 4

Stack Overflow用户

发布于 2019-04-26 00:37:10

  1. my.ini文件中删除或注释bind_address参数。

(文件名因操作系统而异。在Linux上,my.ini实际上是位于目录/etc/mysql/中的my.cnf )

重新启动根用户service.

  • Create
  1. (是的,这是一个新的用户主机,因为存在的是‘root @’,它只具有本地访问权限):

CREATE USER 'root'@'%' IDENTIFIED BY '123';

  • Give权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

对于数据库管理员用户,请在末尾添加

例如CREATE USER 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;

因为它不能使用GRANT__创建

MySQL 8不再能够使用GRANT创建用户,因此如果您尝试将其与GRANT一起使用,则IDENTIFIED BY '123'中会出现错误,这是最常见的错误。

票数 47
EN

Stack Overflow用户

发布于 2021-01-09 04:53:07

MySQL 8中的远程访问:

1)允许从任何主机访问

代码语言:javascript
复制
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address            = 0.0.0.0

2)允许用户从任何地方访问:

代码语言:javascript
复制
mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
UPDATE mysql.user SET host='%' WHERE user='root';

3)将身份验证更改为密码

代码语言:javascript
复制
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'ThePassword';
票数 13
EN

Stack Overflow用户

发布于 2020-08-27 15:54:44

有相同的问题,连接到MySQL工作台并更新了用户权限。

MySQL版本: 8.0.20社区。操作系统: Windows 10。

打开changes.

  • Restart工作台-->服务器--> Users
  1. user
  2. 将限制更改为匹配到"%“的主机,以便从任何主机进行访问。如果需要,
  3. 将应用Service服务。不用重启,我就能工作了。

屏幕截图

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50570592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档