连接到我在云端的 MariaDB 数据库时出现错误 2002 或 2013 SQL
Error 2002 or 2013 when connecting to my MariaDB database on Cloud SQL
我在远程连接到托管在 CloudSQL 实例上的 MariaDB 时遇到了某种网络问题(尽管如此,我认为这无关紧要)。
当我尝试通过 mysql.exe
或 mariadb.exe
从我安装的 mariaDB 进行连接时:
mysql.exe -h x.y.z.a -u test -p
mariadb.exe -h x.y.z.a -u test -p
我收到两种不同的错误类型:
ERROR 2002 (HY000): Can't connect to server on '34.105.136.61' (10060)
< OR >
ERROR 2013 (HY000): Lost connection to the server at 'handshake: reading initial communication packet', system error: 0
有时是第一个,有时是第二个。
我知道这两个错误都可能是由于 network/firewall 问题引起的,但我已经尝试过以下方法:
- 为 Windows 防火墙上的可执行文件添加例外
- 禁用 Windows 防御者
- 添加防火墙规则以允许来自所有 ports/source/destination
的所有流量
我仍然遇到同样的错误。
此外,我还在同一台计算机上使用 DataGrip 作为 IDE,并且从 IDE 我能够正确连接到数据库,所以这似乎不是由由服务器。
任何想法将不胜感激。
编辑:当我使用 telnet telnet x.y.z.a 5432
我连接正确,所以端口似乎可以访问
Cloud SQL 支持 MySQL、Postgres 和 SQL 服务器引擎,但不支持 MariaDB。
此外,您测试了 telnet x.y.z.a 5432
,但是 Cloud SQL MySQL 实例的端口是 3306。(5432 是 Postgres 的端口)。
您应该验证您创建的是哪种类型的云 SQL 实例,以及您是否使用正确的 cli 与其连接。
我在远程连接到托管在 CloudSQL 实例上的 MariaDB 时遇到了某种网络问题(尽管如此,我认为这无关紧要)。
当我尝试通过 mysql.exe
或 mariadb.exe
从我安装的 mariaDB 进行连接时:
mysql.exe -h x.y.z.a -u test -p
mariadb.exe -h x.y.z.a -u test -p
我收到两种不同的错误类型:
ERROR 2002 (HY000): Can't connect to server on '34.105.136.61' (10060)
< OR >
ERROR 2013 (HY000): Lost connection to the server at 'handshake: reading initial communication packet', system error: 0
有时是第一个,有时是第二个。
我知道这两个错误都可能是由于 network/firewall 问题引起的,但我已经尝试过以下方法:
- 为 Windows 防火墙上的可执行文件添加例外
- 禁用 Windows 防御者
- 添加防火墙规则以允许来自所有 ports/source/destination 的所有流量
我仍然遇到同样的错误。
此外,我还在同一台计算机上使用 DataGrip 作为 IDE,并且从 IDE 我能够正确连接到数据库,所以这似乎不是由由服务器。
任何想法将不胜感激。
编辑:当我使用 telnet telnet x.y.z.a 5432
我连接正确,所以端口似乎可以访问
Cloud SQL 支持 MySQL、Postgres 和 SQL 服务器引擎,但不支持 MariaDB。
此外,您测试了 telnet x.y.z.a 5432
,但是 Cloud SQL MySQL 实例的端口是 3306。(5432 是 Postgres 的端口)。
您应该验证您创建的是哪种类型的云 SQL 实例,以及您是否使用正确的 cli 与其连接。