数据库连接故障排除

如果您无法连接到数据库,您需要弄清楚问题是出在 Metabase 还是您的数据库服务器。

如果您的数据库连接成功,但表没有显示在 数据浏览器 中,请转到 排查表缺失问题

排查 Metabase 连接问题

  1. 转到管理员 > 数据库并选择您的数据库,以确认您的连接未被更改或删除。

    • 如果 Metabase 尚未开始同步您的数据库,请点击同步数据库模式

    • 如果 Metabase 同步时间过长,请转到 排查同步和扫描问题

  2. 转到管理员 > 工具 > 日志,查看 Metabase 是否因 错误 而未能同步。

如果您无权访问 Metabase 管理面板,则需要询问设置 Metabase 的人员。

排查数据库服务器连接问题

  1. 检查数据仓库服务器是否正在运行.

  2. 使用运行 Metabase 的机器,检查您是否能从另一个客户端连接到数据仓库。

  3. 确保 Metabase 使用具有必要权限的角色来连接到您的数据仓库。请参阅 授予数据库权限

以上步骤将帮助您检测问题是否发生在 Metabase 之外。要修复数据库服务器的问题,您需要参考您的数据库或云服务的文档。请记住,在进行更改后测试数据库连接

如果您无权访问数据仓库服务器,则需要询问管理您的数据库或数据仓库的人员。

排查 BigQuery 和 Google Drive 连接问题

请参阅 排查 BigQuery 和 Google Drive 连接问题

常见的数据库连接错误

您的查询耗时过长

如果您在 Metabase 界面中看到此错误消息,请转到 排查超时问题

无法从底层数据库获取连接

如果您在日志管理员 > 工具 > 日志)中看到此错误消息。

  1. 转到管理员 > 数据库并选择您的数据库。
  2. 转到高级选项 > 其他 JDBC 连接字符串选项,并添加 trustServerCertificate=true
  3. 点击保存

您用于连接数据仓库的 Metabase 版本必须支持您数据库的版本。例如,46 版之前的 Metabase 版本不支持 Microsoft SQL Server 2022。

测试数据库连接

在完成本指南中的故障排除步骤时,您可以检查每个组件是否按预期工作。

检查服务器状态

如果您使用的是托管数据库服务,请转到控制台并验证其状态。

如果您有直接的命令行界面访问权限,请登录并确保您的数据库正在运行并接受查询。

检查您的服务器访问权限

验证您的 Metabase IP 地址是否可以访问数据库服务器

  1. 使用 netcat 命令 nc(或您的操作系统等效命令)来检查您是否可以连接到给定端口的主机。请注意,不同数据库默认使用不同的端口。

  2. 如果您正在使用 Metabase Cloud,请检查您是否已将我们的 IP 地址列入白名单

  3. 检查您的数据库凭据是否正确。

命令示例

验证 PostgreSQL 默认配置中使用的端口(监听端口 5432)

nc -v your-db-host 5432

验证 PostgreSQL 数据库的凭据(如果数据库名称或用户名/密码不正确,您将看到错误)

psql -h HOSTNAME -p PORT -d DATABASENAME -U DATABASEUSER

测试连接状态

  1. 转到 Metabase 的 SQL 编辑器
  2. 通过运行以下命令来测试与数据库的连接
    SELECT 1
    

通过 JAR 文件运行时出现的 Snowflake 错误

如果您连接到 Snowflake 时遇到类似 JDBC driver internal error: exception creating result 的错误,并且您正在通过 JAR 文件运行,请在您的 java 命令中添加 --add-opens java.base/java.nio=ALL-UNNAMED

java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar

请参阅有关 运行 Metabase jar 文件 的文档。

您还卡住了吗?

如果您无法使用故障排除指南解决问题

阅读其他版本的 Metabase 的文档。

这有帮助吗?

感谢您的反馈!
希望改进这些文档? 提议更改。
© . This site is unofficial and not affiliated with Metabase, Inc.