如何配置PostgreSQL ODBC驱动程序

时间:2019-07-09 14:08:41

标签: postgresql docker odbc cratedb

我在Crate DB上有一个数据库。数据库程序通过docker-compose.yml文件启动。它运行在http://192.168.99.100:4200(这是具有板条箱端口的docker机器的IP)

我想将Crate DB与Power BI连接起来。当我尝试配置PostgreSQL ODBC驱动程序时,我不知道在“服务器”字段中键入什么。

到目前为止,我已经尝试过“ localhost”,“ 127.0.0.1”,“ 0.0.0.0”,“ 192.168.99.100”,但是这些都不起作用。

所以我的问题是,我应该在“服务器”字段中键入哪个IP地址?

connectionError

1 个答案:

答案 0 :(得分:1)

设置似乎正确。确保端口5432已正确发布。假设您使用的是官方cratedb image,则Dockerfile中用于组装映像的裸露端口如下:

# http: 4200 tcp
# transport: 4300 tcp
# postgres protocol ports: 5432 tcp
EXPOSE 4200 4300 5432

因此,为了远程访问这些服务,您必须发布它们的相应端口。如果尚未配置,请在docker-compose.yml中配置端口映射:

version: "3.5"

services:
  cratedb:
    image: crate
    ports:
       - 5432:5432
       - 4200:4200
       - 4300:4300

Compose file reference端口部分中有关端口映射的更多信息。现在,您应该能够使用ODBC PostgreSql驱动程序连接到主机的IP地址(即192.168.99.100)和端口5432

或者,您可以使用端口绑定运行容器:

 docker run -d  -p 4200:4200 -p 5432:5432 -p 4300:4300 crate

如果仍然可以连接到数据库,请检查防火墙设置。