mysql - 客户端成功连接MySQL服务器

标签 mysql networking database-connection

我看到很多关于当连接被拒绝或不成功时如何将客户端连接到 MySQL 服务器的查询。为了简化将来的响应,我将发布一个 IP 和 MySQL 级别的连接需求的简单图表。我会在需要时为每个部分添加描述。

最佳答案

要从客户端计算机连接到 MySQL 数据库,数据必须经过最多 5 级验证。以下是客户端和服务器不在同一网络且未使用安全连接的一般情况:

首先确保 MySQL 使用的 bind-addresslocalhost 不同,因此它使用接口(interface)而不仅仅是本地连接。

MySQL Connection Needs

在每个级别,防火墙规则/权限都必须允许连接通过。请注意,一台机器的内部 IP 可能且通常与外部不同。基本原理是:

The Client external IP has to be allowed to connect to the DB internal IP, through all the levels.

大多数时候,防火墙都已正确配置。最后一部分经常缺少 MySQL 服务器对外部用户的数据库的GRANT权限。最后的语法是:

MySQL Grant Syntax

通常采用以下形式:

GRANT ALL ON <DB>.* TO '<external_user>'@'<external_ip>' IDENTIFIED BY 'external_password';

关于mysql - 客户端成功连接MySQL服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46531115/

相关文章:

mysql - 面对多表连接的问题

mysql - 共同好友的SQL查询

compiler-construction - 路由算法

java - 在 Java 中建立多客户端/服务器 TCP 连接

asp.net - 解释为什么对象的生命周期在作用域之外

WordPress 我更改了数据库用户密码,但网站无法连接数据库

mysql - 合并行但维护单独的列

php - codeigniter数据库数组解析

networking - 如何告诉 playframework 使用我的公司代理?

mysql - 使用 Aulux Barcode 软件连接到 MySQL 数据库