Power BI本身没有直接的链接器来获取GaussDB,目前连接GaussDB的方法有2个:
ODBC, JDBC,这两种方式在云端都要通过设置网关,pbi云端通过网关链接到虚拟机或者某台电脑上,电脑安装个人网关(组织网关没有成功,不知道为什么,知道原因的希望能留言),下面说下两种连接方式:
一、Power BI 通过ODBC 连接gaussDB 高斯数据库
1、下载odbc驱动:下载JDBC或ODBC驱动_数据仓库服务 GaussDB(DWS)_华为云
页面最下方(上方是JDBC驱动)
2、解压Windows版本的ODBC驱动包,并安装“psqlodbc.msi”。
3、打开驱动管理器,请勿直接使用“控制面板> 管理工具 > 数据源(ODBC)”,
32位系统位置:C:\Windows\SysWOW64\odbcad32.exe
64位系统位置:C:\Windows\System32\odbcad32.exe
4、配置连接数据源。
- 在打开的驱动管理器上,选择
其中,配置项“Server”和“Port”的值,可以在GaussDB(DWS)的管理控制台查看。请登录GaussDB(DWS)管理控制台,单击“连接客户端”, 在“数据仓库连接字符串”区域,选择指定的集群,获取该集群的“内网访问地址”或“公网访问地址”。具体步骤请参见获取GaussDB(DWS)集群连接地址。
注意,因为可能数据库有设置session_timeout 属性(连接空闲关闭时间,比如有的设置是600秒,导致链接在被请求完毕后,处于非活动状态时,超过10分钟被关闭,如果十分钟后在请求,就会出现链接超时的情况),所以点击datasouse选项:尝试设置下这个属性(这个没有测试,是否能彻底解决问题,我是遇到了session_timeout问题,但是环境不是我的,没有最终做这个测试,我估计是这样来解决)这里是个坑,一定要注意!
- 单击“Test”验证连接正确,界面提示“Connection successful”。
5、power bi上使用
至此ODBC链接讲完
以上参考文章:使用ODBC连接_数据仓库服务 GaussDB(DWS)_华为云 下载JDBC或ODBC驱动_数据仓库服务 GaussDB(DWS)_华为云
二、Power BI 通过JDBC 连接gaussDB 高斯数据库
正常来说,powerbi没有直接的路径通过JDBC链接高斯数据库,但是可以通过执行python语句来调用JDBC驱动来连接数据库
1、基础配置:
- JDBC驱动
- python3.8(可能不一定是非要是这个版本,但是这个版本可以)
- openjdk,我用的是11
1) JDBC驱动下载:下载JDBC或ODBC驱动_数据仓库服务 GaussDB(DWS)_华为云
选择对应的驱动,然后有一点要注意,这个驱动解压后有两个JDBC的驱动jar包,分别为“gsjdbc4.jar”和“gsjdbc200.jar”
gsjdbc4.jar 我理解对应的数据库URL前缀为jdbc:PostgreSQL:// 开头的数据库
gsjdbc200.jar:对应的数据库连接的URL前缀为“jdbc:gaussdb”开头的数据库,实际使用的时候,选择对应的即可,这点很重要
还要知道一个内容,drive类名,这个类名可以这么找:
通过一步一步的往下找,找到有driver.class这个文件的目录,那么driver类名就是这个路径
gsjdbc4.jar driver类名:org.postgresql.Driver
gsjdbc200.jar driver类名:com.huawei.gauss200.jdbc.Driver
2) python环境,安装python3.8,然后安装pandas包、matplotlib包,我理解这两个包是必须的,无论是否使用,安装方法略,如果不会自行网上搜索
3)openjdk ,因为调用java包,需要有java环境,这里推荐jdk11,官方下载链接似乎出了问题,即使注册账号后,点击也无法下载,可以去这个链接下载