头图

1、修改数据源端配置:

解压网关工具包,然后进行源端和目标端的配置。源端配置文件目录为:[网关安装目录]/conf/datasource/gc_link1.properties的文件,不同数据源可以创建不同名称的以.properties结尾的源文件,配置文件中的参数说明如下。

[root@server ~]# cat [网关安装目录]/conf/dataSource/gc_link1.properties

[ds1]

dataSource_IP=10.10.5.60 #源端机器ip

dataSource_port=5258 #端口号

dataSource_dbname=test #要访问的源端的数据库

dataSource_dbtype=gcluster #8a集群填写gcluster

dataSource_user=gbase #连接源端时访问的数据库用户

dataSource_pwd=gbase20110531 #数据库用户密码

dataSource_charset=utf8 #字符集设置

2、修改目标端配置:

目标端配置文件目录为:[网关安装目录]/conf/gcluster/gbase8a_gcluster.properties。配置文件中的参数说明如下。注意:目标端配置文件名不允许修改,所有目标端配置都配置在这一个文件中即可,[gc名称]按数字递增即可。

[root@server ~]#$ cat [网关安装目录]/conf/gcluster/gbase8a_gcluster.properties

[gc1]

gcluster_IP=10.10.7.196 #目标端机器ip

gcluster_port=5258 #gcluster层端口号

gcluster_user=gbase #目标端数据库用户

gcluster_pwd=gbase20110531 #数据库用户密码

gcluster_encode=utf8

[gc2]

gcluster_IP=10.10.7.196 #目标端机器ip

gcluster_port=5050 #gnode层端口号

gcluster_user=gbase #目标端数据库用户

gcluster_pwd=gbase20110531 #数据库用户密码

gcluster_encode=utf8

3、目标端添加网关信息:

在目标端集群中添加网关信息,通过修改集群层配置文件进行添加,修改后重启gcluster服务使其生效。在目标集群的gcluster层配置文件gbase_8a_gcluster.cnf 中[gbased]下加入网关信息。

[root@server ~]# cat [集群安装目录]/gcluster/config/gbase_8a_gcluster.cnf

[gbased]

.....

gbase_dblink_gateway_ip=10.10.5.60 #网关所在ip

gbase_dblink_gateway_port=9898 #网关端口

.......

4、启动网关:

在网关[安装目录]下有gbaseGateway.sh文件,执行命令启动网关。

[root@server ~]#sh gbaseGateway.sh start

5、创建dblink:

网关部署完成后,在目标集群创建dblink并使用。创建dblink命令:create database link <link名称> connect to '<目标端数据库用户,可不填>' identified by '<目标端数据库用户密码,可不填>' using '<源端配置文件名称:gc_link1>';。举例如下:

[root@server ~]#gccli -uu1 -p111111

gbase>create database link link1 connect to 'u1' identified by '111111' using 'gc_link1';

注意:

如果不填写connect to的用户和密码,则会根据目标端配置文件中的用户配置进行连接。

6、使用dblink:

dblink使用包括对dblink表的查询、数据拉取、数据推送、直通模式,相关语法说明如下。

查询

select * from <源端表>@<link名>;

拉取数据

insert into <本地表> select * from <源端表>@<link名>;

create table tt as select * from <源端表>@<link名>;

数据推送

insert into <源端表>@<link名> select * from <本地表>;

直通模式

passthrough link <link名> using 'create table t1(i int,v varchar(30))';

passthrough link <link名> using 'insert into t1 values(1,\'花\'),(2,\'树\')';

passthrough link <link名> using 'drop table t1';


GBase数据库
1 声望2 粉丝

GBase数据库知识分享