测试数据库连接

在排查新环境问题时,通常有助于隔离其中的各种组件,并尽可能简单地单独测试这些组件。

如需测试 Looker 服务器与数据库之间的连接,您可以在 Looker 服务器上使用 Telnet 创建简单的 TCP 连接。使用 Telnet 的优势在于非常简单。无需修改任何配置文件,也无需进行身份验证。Telnet 要么建立连接,要么不建立连接。

在知道数据库可以访问后,您就可以继续通过数据库的原生客户端 (Looker) 等应用进行测试。

安装 Telnet

某些主机可能已预安装 Telnet。如需进行测试,请在 Looker 服务器上运行以下命令:

telnet ?

您应会看到类似下图的界面:

usage: telnet [-l user] [-a] [-s src_addr] host-name [port]

如果屏幕上显示“未找到命令”则需要安装 Telnet。

在 Ubuntu 上:

sudo apt-get install telnet

在 Redhat/CentOS 上:

yum install telnet

默认端口

您需要知道您的数据库在哪个端口上运行。下表 列出了一些平台的默认端口 配置为在其他端口上运行请咨询您的数据库管理员。

平台 端口
Amazon Redshift 5439
GreenPlum 5432
Microsoft SQL Server (MSSQL) 1433
MySQL 3306
Oracle 1521
PostgreSQL 5432
Vertica 5433

通过 Telnet 连接到您的数据库

如需测试与数据库的连接,请在 Looker 服务器上运行 telnet hostname port。例如,如果您在默认端口上运行 MySQL,并且数据库名称为 mydb,则命令为 telnet mydb 3306

如果连接正常,您将看到类似如下所示的内容:

Trying 10.10.10.10...
Connected to mydb.
Escape character is '^]'.

如果连接不正常,您会看到类似于以下某种内容:

Trying 10.10.10.10...
telnet: Unable to connect to remote host: Connection timed out
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
telnet: could not resolve mydb/telnet: Name or service not known

问题排查

如果 Telnet 检查不成功,请考虑以下事项:

  • 主机名是否正确?
  • 数据库和 Looker 服务器是否已配置为允许在它们之间传输网络流量?检查两个主机上是否安装了任何防火墙软件。
  • Looker 服务器和数据库主机之间的所有网络是否已配置为允许网络流量?检查防火墙和网络访问控制列表 (ACL)。
  • Looker 服务器与数据库主机之间的所有网络是否已正确配置,以便在主机之间路由流量?
  • 数据库服务器是否正在运行?它是否在监听正确的端口?它是否配置为允许来自 Looker 服务器的连接?

后续步骤

如果您能够从 Looker 服务器 Telnet 到数据库服务器的端口,则可以排除基本连接问题。下一步是创建 Looker 数据库连接