数据库连接故障排除
如果您无法连接到数据库,则需要弄清楚问题是出在 Metabase 还是您的数据库服务器上。
如果您的数据库连接成功,但表未显示在数据浏览器中,请转到故障排除缺失表。
Metabase 连接故障排除
-
转到管理 > 数据库并选择您的数据库,以确认您的连接未被更改或删除。
-
如果 Metabase 尚未开始与您的数据库同步,请点击同步数据库模式。
-
如果 Metabase 同步时间过长,请转到同步和扫描故障排除。
-
-
转到管理 > 工具 > 日志,检查 Metabase 是否因错误而无法同步。
- 如果日志太多,请查看如何阅读服务器日志。
如果您无法访问 Metabase 管理面板,您需要咨询设置 Metabase 的人员。
数据库服务器连接故障排除
-
检查您是否可以使用运行 Metabase 的机器从另一个客户端连接到数据仓库。
-
如果您可以从堡垒主机或其他机器访问服务器,请检查您的 Metabase 的 IP 地址是否可以访问您的数据库服务器。
-
如果您正在运行 Metabase Cloud,请检查您是否已将我们的 IP 地址列入白名单。
-
-
确保 Metabase 使用具有必要权限的角色连接到您的数据仓库。请参阅授予数据库权限。
上述步骤将帮助您检测问题是否发生在 Metabase 外部。要*修复*数据库服务器问题,您需要查阅数据库或云服务的文档。请记住,在进行更改后测试您的数据库连接。
如果您无法访问数据仓库服务器,您需要咨询管理您的数据库或数据仓库的人员。
BigQuery 和 Google Drive 连接故障排除
请参阅BigQuery 和 Google Drive 连接故障排除
常见数据库连接错误
您的查询耗时过长
如果您在 Metabase 界面中看到此错误消息,请转到超时故障排除。
无法从底层数据库获取连接
如果您在日志(管理 > 工具 > 日志)中看到此错误消息
- 转到管理 > 数据库并选择您的数据库。
- 转到高级选项 > 附加 JDBC 连接字符串选项并添加
trustServerCertificate=true
。 - 点击保存。
您用于连接数据仓库的 Metabase 版本必须支持您的数据库版本。例如,Metabase 46 之前的版本不支持 Microsoft SQL Server 2022。
测试数据库连接
在您执行本指南中的故障排除步骤时,您可以检查每个组件是否按预期工作
检查服务器状态
如果您正在使用托管数据库服务,请转到控制台并验证其状态。
如果您有直接访问命令行界面的权限,请登录并确保您的数据库正在运行并接受查询。
检查您的服务器访问
要验证您的 Metabase 的 IP 地址可以访问数据库服务器
-
使用 netcat 命令
nc
(或您的操作系统的等效命令)来检查您是否可以连接到给定端口上的主机。请注意,默认情况下,不同的数据库使用不同的端口。 -
如果您正在运行 Metabase Cloud,请检查您是否已将我们的 IP 地址列入白名单。
-
检查您的数据库凭据是否正确。
示例命令
要验证默认 PostgreSQL 配置中使用的端口(监听端口 5432)
nc -v your-db-host 5432
要验证 PostgreSQL 数据库的凭据(如果数据库名称或用户/密码不正确,您将看到错误)
psql -h HOSTNAME -p PORT -d DATABASENAME -U DATABASEUSER
测试连接状态
- 转到 Metabase SQL 编辑器。
- 通过运行以下命令测试与数据库的连接
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 社区。
- 搜索已知错误或限制。
- 聘请 Metabase 专家。
阅读其他版本的 Metabase 的文档。