返回首页

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

更新日期:2024年09月11日

as the Storage Manager. XBSA API version is 1.0.3.
b. 使用 onpsm 实用程序可列出已创建的存储对象:
onpsm -O list
报告包含存储对象标识、创建存储对象的日期、存储对象的大小,以及存储对象
在存储设备中的位置。

示例 3:将备份导出到另一个目录并从其恢复备份
此示例显示如何将备份导出到新目录,并从该目录导入备份对象。
假设您保留了五个备份生成。作为额外的预防措施,您还将最近几个备份的副本保留在一
个单独的目录中。在此示例中,您将使用 onsmsync 实用程序将最近备份导出到单独目录
中的 GBase 8s Primary Storage Manager 外部池,并从中导入该备份。
存储管理器跟踪外部设备池 (EXTPOOL) 中的设备,以便可以与外部设备之间复制对象。
(虽然存储管理器会跟踪设备,但它不会跟踪存储管理器目录中 EXTPOOL 池内部的文
件和对象。)

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 176 -

1.
按照示例 1:存储实例的备份中的步骤存储实例的备份。
2.
运行 onpsm -D list 命令来检查 EXTPOOL 池中是否有设备。
a. 如果 EXTPOOL 池中没有设备,请使用 onpsm -D add 命令添加一个设备。
以下示例显示如何将路径为 /export/gbasedbt/psm_exportdir 的设备添加到
EXTPOOL 池。
$ onpsm -D add /export/gbasedbt/psm_exportdir -g EXTPOOL -t FILE
3. 运行 onsmsync 命令来导出第一次生成的 0 级备份中的所有备份对象,同时使用
前缀 pw_sept5,该前缀将成为实用程序放置备份的子目录的名称:
onsmsync -E -p pw_sept5 -g 1
运行 onsmsync -E 命令来导出备份对象之后,将在 EXTPOOL 目录中看到一个子
目录,其中包含保存备份对象和名为 export.bom 的文件的目录。
假设主备份目录中存储的备份生成出现问题,而您希望从第二个目录导入 pw_sept5 备份
生成。要导入备份生成:
1.
运行 onsmsync 命令来导入 pw_sept5 子目录中的所有备份对象:
onsmsync -I -p pw_sept5
使用您自己的文件传输方法,根据需要将导出的备份移至其他机器。

示例 4:从一个服务器导出备份,并将其导入到另一个服务器
此示例显示如何使用 onsmsync 实用程序从名为 gbasedbt_serv1 的数据库服务器导出备份。
此示例还显示了如何使用 onsmsync 实用程序将数据导入到名为 gbasedbt_serv2 的服务器。
1.
设置并导出数据库服务器 gbasedbt_serv1 上的文件:
a. 设置 gbasedbt_serv1 的 GBS_HOME、GBS_DATA 环境变量。
b. 运行 onpsm -D list 命令来检查 EXTPOOL 池中是否有设备。如果 EXTPOOL
池中没有设备,请使用 onpsm -D add 命令添加一个设备。
c. 运行 onsmsync 命令来导出第一次生成的 0 级备份中的所有备份对象,同时使
用前缀 serv1_20120810,该前缀将成为实用程序放置备份的子目录的名称:
$ onsmsync -E -p serv1_20120810 -g 1
2.
准备导入第二个数据库服务器 gbasedbt_serv2 上的文件,如下所示:
a. 设置 gbasedbt_serv2 的 GBS_HOME、GBS_DATA 环境变量。
b. 运行 onpsm -D list 命令以确定 EXTPOOL 是否具有您在步骤 1b 中查看或添加
的相同设备。(对于共享设备,可能发生这种情况。)如果 EXTPOOL 池中没
有设备,请使用 onpsm -D add 命令添加一个设备。

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 177 -

c. 将先前导出的备份对象(例如,子目录 serv1_20120810)复制到将从中导入备
份对象的 EXTPOOL 设备。
d. 运行以下命令来从 EXTPOOL 设备导入备份对象:
$ onsmsync -I -p serv1_20120810
运行 onsmsync -I 命令以导入备份对象之后,这些对象将存储在新的 LOGPOOL
和 DBSPOOL 池中。
e. 运行 onpsm -O list 命令来查看导入的对象。
请注意,导入命令还会在 $GBS_HOME/etc/ 目录中创建新的 ixbar 文件。
$ ls -l $GBS_HOME/etc/*ixbar*

-rw-rw-- 1 gbasedbt gbasedbt 0 Aug 10 19:44
/usr/gbasedbt/etc/ixbar.12.20120810.194441
-rw-rw-- 1 gbasedbt gbasedbt 2704 Aug 10 19:44
/usr/gbasedbt/etc/ixbar.12
新的 ixbar 文件将列出导入的备份对象,以便您能够执行 ON-BAR 冷恢复以将
第一个数据库服务器中的 gbasedbt_serv1 实例恢复到第二个数据库服务器上
的 gbasedbt_serv2 实例。

ifx_lo_col_info() 函数更改具有列级存储特性的智能大对象规范结构。
语法
ifx_lo_col_info(colname, lospec)
参数
该函数接受以下参数。
参数
类型
用于
描述
colname SQL_CHAR
输入
指向包含数据库列名称的缓冲区
该值必须具有下列格式:
database@server_name:table.column

如果列在 ANSI 兼容的数据库中,
则可以
包含所有者名称。在这种情况下,使用以
下格式:
database@server_name:owner.table.column

lospec
SQL_INFX_UDT_FIXED
I/O
智能大对象规范结构

用法
ifx_lo_col_info() 函数将智能大对象规范结构的字段设置为 colname 数据库列的存储特征。
如果指定的列没有定义列级别存储特征,则数据库服务器将使用继承的存储特征。
重要: 在调用此函数之前,必须调用 ifx_lo_def_create_spec()。

标准转换存在于 GBase 8s SQL 数据类型与 GBase 8s ODBC Driver C 数据类型之间。
仅 GBase 8s 可将数据转换为 SQL_C_BIT。
GBase 8s ODBC 驱动程序 C 数据类型 SQL_C_BINARY、SQL_C_CHAR 和
SQL_C_WCHAR 支持罗列在下表中的所有 GBase 8s SQL 数据类型之间转换。
下表展示在 GBase 8s SQL 数据类型与 GBase 8s ODBC Driver C 数据类型之间支持的转
换。
表 1. 在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换.
展示在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换的五列表。
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_BIT SQL_C_DATE SQL_C_DOUBLE
SQL_C_FLOAT
BOOLEAN




CHAR、
CHARACTER




CHARACTER
VARYING




DATE




DATETIME




DEC、
DECIMAL




DOUBLE
PRECISION




FLOAT





GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 66 -
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_BIT SQL_C_DATE SQL_C_DOUBLE
SQL_C_FLOAT
INT、INTEGER




INT8




LVARCHAR




MONEY




NUMERIC




REAL




SERIAL




SMALLFLOAT




SMALLINT




TEXT




VARCHAR





表 2. 在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换.
展示在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换的五列表。
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_L
ONG
SQL_C_NUMERIC SQL_C_SHOR
T
SQL_C_SLON
G
BIGINT




BIGSERIAL




BYTE




CHAR、
CHARACTER




CHARACTER
VARYING




DEC、DECIMAL




DOUBLE
PRECISION




FLOAT





GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 67 -
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_L
ONG
SQL_C_NUMERIC SQL_C_SHOR
T
SQL_C_SLON
G
INT、INTEGER




INT8




LVARCHAR




MONEY




NUMERIC




REAL




SERIAL




SERIAL8




SMALLFLOAT




SMALLINT




TEXT




VARCHAR





表 3. 在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换.
展示在 GBase 8s SQL 数据类型 与 ODBC Driver C 数据类型支持的展缓的五列表。
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_SSHORT
SQL_C_STINYINT
SQL_C_TIMESTAMP
BIGINT



BIGSERIAL



CHAR、
CHARACTER



CHARACTER
VARYING



DATE



DATETIME



DEC、DECIMAL




GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 68 -
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_SSHORT
SQL_C_STINYINT
SQL_C_TIMESTAMP
DOUBLE
PRECISION



FLOAT



INT、INTEGER



INT8



LVARCHAR



MONEY



NUMERIC



REAL



SERIAL



SERIAL8



SMALLFLOAT



SMALLINT



TEXT



VARCHAR




ODBC 驱动程序 C 数据类型 SQL_C_ULONG 支持罗列在下表中的所有 SQL 数据类型
之间的转换。
表 4. 在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换.
展示在 GBase 8s SQL 数据类型与 ODBC Driver C 数据类型之间支持的转换的五列表。
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_TINYINT
SQL_C_USHORT
SQL_C_UTINYINT
BIGINT



BIGSERIAL



CHAR、
CHARACTER



CHARACTER
VARYING




GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 69 -
SQL 数据类型
ODBC 驱动程序 C 数据类型(目标类型)
SQL_C_TINYINT
SQL_C_USHORT
SQL_C_UTINYINT
DEC、DECIMAL



DOUBLE
PRECISION



FLOAT



INT、INTEGER



INT8



LVARCHAR



MONEY



NUMERIC



REAL



SERIAL



SERIAL8



SMALLFLOAT



SMALLINT



TEXT



VARCHAR