返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

GBase 8t 到Oracle 增量同步

GBase RTSync 同步工具手册
南大通用数据技术股份有限公司
- 109 -
下面我们通过三个示例来分别说明GBase 8t 到Oracle 的库级别同步、表
级别同步和列级同步。
在这三个示例中,源数据库为GBase 8t,目标数据库为Oracle 数据库,
消息队列为Kafka 集群,消息队列存储的数据格式为PUREDATA。
同步环境信息如下:
源数据库信息:
IP 为192.168.5.5;
数据库用户名为informix,
密码为1;
数据库为testdb。
目标数据库信息:
IP 为192.168.5.6;
数据库用户名为test,
密码为test;
Schema 为TEST。需要注意的是,Oracle 数据在建表时需要指定小写的表名及
列名,即在建表语句中用双引号包围小写的表名及列名。
Kafka 集群信息:IP 为192.168.5.11、192.168.5.12;用户名为root,密
码为root。
读数据组件信息:IP 为192.168.5.1;用户名为root,密码为root。
写数据组件信息:IP 为192.168.5.2;用户名为root,密码为root。
管理组件信息:IP 为192.168.5.3;用户名为root,密码为root。

bar_action 表列出试图对某个对象执行的所有备份与恢复操作,
除了在某些类型的冷恢复期
间执行的操作之外。请使用该表中的信息跟踪备份与恢复历史记录。
表 1. bar_action 表列
列名
类型
解释
act_aid
SERIAL
操作标识。表中的唯一编号。可以与 act_oid 列一起
使用以连接 bar_instance 表。
act_oid
INTEGER
对象标识。
标识备份或恢复操作所针对的备份对象。


GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 105 -
列名
类型
解释
以与 act_aid 一起使用以连接bar_instance。
bar_action 表的 act_oid 列等同
于 bar_object 表的 obj_oid 列。
act_type
SMALLINT
标识已尝试的操作:
1 表示备份,
2 表示恢复,
3 表
示外部或导入的恢复,
4 表示伪备份,
5 表示整个系
统的备份,
6 表示整个系统的恢复,
7 表示到期的或
已删除的对象,8 表示外部恢复。
act_status
INTEGER
标识操作的结果:如果成功则为 0,否则是特定于
ON-Bar 的错误代码。有关更多信息,请参阅 ON-Bar
消息和返回码。
act_start
DATETIME
YEAR
TO
SECONDS
操作开始的日期和时间。
act_end
DATETIME
YEAR
TO
SECONDS
操作完成的日期和时间。

要定义外部表,需要使用 SQL 语句来描述数据文件,定义表,然后指定要装入或卸载的
数据。
要设置装入和卸载任务,需要发出以下一系列 SQL 语句:
• CREATE EXTERNAL TABLE,用于描述要装入或卸载的数据文件
• CREATE TABLE,用于定义要装入的表
• INSERT...SELECT,用于执行装入和卸载
以下步骤概述装入过程:
1. CREATE EXTERNAL TABLE 语句描述各个外部文件的位置和外部数据的格式,其
位置可以是磁盘或来自管道(磁带机或直接网络连接)。以下示例描述的是
CREATE EXTERNAL TABLE 语句:
CREATE EXTERNAL TABLE emp_ext
( name CHAR(18) EXTERNAL CHAR(18),
hiredate DATE EXTERNAL CHAR(10),
address VARCHAR(40) EXTERNAL CHAR(40),
empno INTEGER EXTERNAL CHAR(6) )
USING (
FORMAT 'FIXED',
DATAFILES
("DISK:/work2/mydir/emp.fix")
);
2. CREATE TABLE 语句定义要装入的表。以下样本 CREATE TABLE 语句定义
employee 表:
CREATE TABLE employee
FRAGMENT BY ROUND ROBIN IN dbspaces;
3. INSERT...SELECT 语句用于映射外部数据与数据库表之间的移动。 以下样本
INSERT 语句从外部表装入 employee 表:
INSERT INTO employee SELECT * FROM emp_ext
要点: 如果指定多个 INSERT...SELECT 语句来卸载数据,那么每个后续 INSERT 语句将覆盖数据文
件。 请对数据文件使用绝对路径。
将数据装入数据库时,SELECT 子句的 FROM 表部分是 CREATE EXTERNAL 语句定
义的外部表。将数据卸载到外部文件时,SELECT 子句控制从数据库检索数据。

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 254 -
与 TEMP 表不同,外部表在删除之前会在目录中保留定义。创建外部表时,可保存数据
的外部描述,以便复用。将表卸载为 GBase 8s 内部数据表示法后,此操作特别有用,因
为稍后可使用相同的外部表描述来重新装入这些数据。
外部表定义中包含定义外部数据文件中的数据所需的全部信息,如下所示:
• 外部数据中的字段的描述。
• DATAFILES 子句。
该子句指定:
o
数据文件是位于磁盘上还是命名管道上。
o
文件的路径名。
• FORMAT 子句。
该子句指定外部数据文件中的数据格式化类型。数据库服务器转换若干数据格式
的外部数据,这些格式包括定界和固定 ASCII,以及 GBase 8s 内部格式。
• 影响数据格式的任何全局参数。
如果将外部表直接映射到定界格式的内部数据库表中,可使用 CREATE EXTERNAL
TABLE 语句定义列,并添加子句 SAMEAS 内部表,而无需显式枚举列。