GBase 8a支持通过DBLink访问哪些异构数据源?配置DBLink连接时需要提供哪些信息?
GBase 8a 通过 DBLink 功能支持的异构数据源以及配置连接所需的信息如下:
一、支持的异构数据源
GBase 8a DBLink 通过 透明网关(Gateway) 和 JDBC/ODBC 驱动,支持访问多种主流数据库。具体包括:
| 数据源类型 | 具体数据库/模式 | 重要限制与说明 |
|---|---|---|
| 国产数据库 | • GBase 8c
| 需对应数据库的JDBC驱动。 |
| 国外商用数据库 | • Oracle (10g, 11g) • Teradata • MySQL | • Oracle:仅支持
|
| 其他云/分布式数据库 | • OceanBase(Oracle租户) | 需兼容Oracle语法和协议。 |
二、配置DBLink连接所需的信息与步骤
配置DBLink不是一条简单的SQL,而是一个部署和配置透明网关服务的过程。所需信息分散在多个配置文件中。
核心架构
[您的应用] -> [GBase 8a 集群] -> [透明网关 (Gateway)] -> [异构数据源]网关是独立的Linux进程,负责协议转换和数据搬运。
配置流程与所需信息
假设要从GBase 8a访问一个Oracle数据库,配置步骤如下:
第一步:安装与配置透明网关(在网关服务器上操作)
- 安装网关软件:在独立的Linux服务器上安装透明网关组件。
- 配置主配置文件
conf.properties:- 此文件定义网关的通用行为。
需要提供/确认的信息:
interactive_code:交互信息编码格式(如UTF-8)。page_size:SQL分页查询时每页的大小。load_data_method:数据加载方式(batch或insert_values)。source_is_paged:源端查询是否分页。wait_timeout:等待超时时间。integer_use_decimal:整型是否使用decimal类型传输。
第二步:配置数据源连接信息
编辑文件 dataSource_dblink.properties。这是配置的核心,需要提供异构数据源的详细连接信息。
需要提供的信息(对于每个数据源):
properties
# 示例:配置一个名为 oracle_link1 的Oracle数据源 dataSource.oracle_link1.ip=192.168.1.100 dataSource.oracle_link1.port=1521 dataSource.oracle_link1.dbType=oracle dataSource.oracle_link1.dbName=orcl dataSource.oracle_link1.user=scott dataSource.oracle_link1.password=tiger dataSource.oracle_link1.charset=UTF8ip/port:异构数据源数据库服务器的IP和端口。dbType:数据库类型,如oracle,mysql。dbName:数据库实例名或服务名。user/password:连接用户名和密码。charset:数据源的字符集,必须与GBase端兼容。
第三步:配置目标GBase 8a集群信息
编辑文件 gbase8a_gcluster.properties。这告诉网关将数据写入哪个GBase集群。
需要提供的信息:
properties
gcluster.ip=172.16.10.10 gcluster.port=5258 gcluster.dbEncoding=UTF8 gcluster.user=gbase gcluster.password=GBase123ip/port:GBase 8a 协调节点(GCluster) 的IP和端口。dbEncoding:目标GBase数据库的编码。user/password:在GBase中有读写权限的用户。
第四步:启动网关并创建DBLink
启动网关服务:
sh gt.sh start在GBase 8a中创建DBLink对象:
CREATE PUBLIC DATABASE LINK oracle_link1 CONNECT TO gateway_user IDENTIFIED BY 'gateway_pwd' USING 'gt://网关服务器IP:端口/oracle_link1';- 此处的
gateway_user/gateway_pwd是网关自身的认证用户,需在网关中配置。 USING子句指向网关服务器和第一步中定义的数据源名称。
- 此处的
三、重要限制与注意事项
网关部署限制:透明网关只支持Linux操作系统。
- 网络与IP支持:
- 支持 IPv4 <-> IPv4、IPv6 <-> IPv6、IPv6 <-> IPv4。
- 使用IPv6时,地址必须写完整,中间的
0不能省略。
- 功能限制:
- 支持:
SELECT查询、CREATE TABLE ... AS SELECT、INSERT ... SELECT、在存储过程中使用。 不支持:对DBLink表直接进行DDL、通过DBLink创建视图、使用DBLink表进行UPDATE/MERGE、在函数中使用DBLink。
- 支持:
权限要求:启动网关的Linux用户,必须在目标GBase 8a集群中拥有相应的读写权限。
四、总结
配置GBase 8a DBLink是一个三层配置过程:
- 网关全局配置 (
conf.properties):定义网关行为参数。 - 源端配置 (
dataSource_dblink.properties):提供异构数据源的详细连接信息(IP、端口、类型、库、用户、密码、字符集)。 目标端配置 (
gbase8a_gcluster.properties):提供GBase 8a集群的连接信息。
成功配置后,您就可以在GBase 8a中使用 SELECT * FROM table_name@oracle_link1 这样的语法,透明地查询或迁移异构数据库中的数据。此功能是实现数据仓库集成(ETL)和跨系统查询的关键工具。
评论
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25052
- 42023-09-25浏览数:18521
- 52020-05-11浏览数:17526