返回首页

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

更新日期:2024年09月11日

hot_standby_feedback
参数说明:设置是否允许将备机上执行查询的结果反馈给主机,这可以避免查询冲突。
该参数属于SIGHUP 类型参数,请参考表15-1 中对应设置方法进行设置。
取值范围:布尔型

on 表示允许将备机上执行查询的最小事务号反馈给主机。

off 表示不允许将备机上执行查询的最小事务号反馈给主机。
默认值:off
须知:当该参数为on 时,主机的旧版本数据的清理会受限于备机正在读的事
务,即主机只允许清理小于备机反馈回来的事务所作的更改。所以,若该参数开启时,会
影响主机的性能。

可以使用 ifxclone 实用程序从当前的数据库服务器快照创建服务器。
语法

Mandatory parameters

Optional parameters

元素
用途
关键注意事项
disposition
指定新服务器的最终规范 如果没有指定 --disposition (-d) 参
数,那么将会创建一台标准服务器
ER
指定新服务器实例创建为
复制服务器

HDR
指定新服务器实例创建成
为 HDR 辅助服务器

parameter=value
指定可选的配置参数并且
将值设置到目标服务器
确定源服务器的配置参数必须与目标服务
器相符。请参阅克隆 RS 辅助服务器的前
提条件
RSS
指定新数据库实例创建为


GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 386 -

元素
用途
关键注意事项
远程独立辅助服务器
SDS
指定新数据库实例创建为
共享磁盘辅助服务器
ifxclone 实用程序设置目标服务器的
SDS_PAGING 和 SDS_TEMPDBS 配置参数,
但是全配置不在 ifxclone 实用程序范围
之内。
如果命令中指定了 --disposition=SDS
但没指定 --useLocal ,您必须将 SD 辅
助服务器的 ROOTPATH 配置参数值设置得
与主服务器上 ROOTPATH 配置参数值相同
size
指定目标服务器的大小。
有效的值有 tiny 、
small 、
medium 和 large
如果没有指定该大小参数,将会使用源实
例的大小参数
source_name
指定源实例的名称
源服务器必须是主服务器并且不能是辅助
服务器
source_IP
指定源服务器实例的
TCP/IP 地址

source_port
指定源服务器实例的
TCP/IP 端口地址或与该
端口关联的服务名称

target_name
指定目标服务器实例的名


target_IP
指定目标服务器实例的
TCP/IP 地址

target_port
指定目标服务器实例的
TCP/IP 端口地址或与该
端口关联的服务名称


下表描述了有关 ifxclone 实用程序的选项。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 387 -

长格式
短格式
含义
--autoconf
-a
新克隆服务器和高可用集群或 Enterprise
Replicatio 域的其他服务器之间的自动配置连
接。如果该选项用于创建复制服务器,那么
--autoconf 选项可以自动配置复制。
--autoconf 选项具有以下要求:
l 在目标服务器、源服务器和其他群集或
复制服务器上,
CDR_AUTO_DISCOVER 配
置参数必须设置为 1。
l REMOTE_SERVER_CFG 必须设置在所有群
集或复制服务器上。
l 源服务器的信任主机文件必须有目标服
务器的主机信息
l 如果使用 --disposition=ER 选项,并
且主服务器为 Enterprise
Replication 的一部分,
那么在该域内
的其他复制服务器必须是活动的
--configParm
-c
指定要设置到目标服务器上的配置参数的名称
和值
--disposition
-d
指定新服务器示例的规定
--help
-h
显示用法信息
--size
-s
指定目标实例的大小
--source
-S
指定源服务器实例的名称
--sourceIP
-I
指定源服务器实例的 TCP/IP 地址
--sourcePort
-P
指定源服务器实例的 TCP/IP 端口地址或与该
端口相关联的服务名
--target
-t
指定目标服务器实例的名称
--targetIP
-i
指定目标服务器实例的 TCP/IP 地址

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 388 -

长格式
短格式
含义
--targetPort
-p
指定目标服务器实例的 TCP/IP 端口地址或与
该端口相关联的服务名
--trusted
-T
指定该服务器是可以信任的,
并且在访问服务器
时不需要获取用户 ID 和密码
--useLocal
-L
指定源服务器 onconfig 文件中的配置信息应
与目标服务器 onconfig 文件合并。
确定源服务器的配置参数必须与其在目标服务
器上的内容相一致。请参阅 所有服务器的前提
条件

用法
可以使用 ifxclone 实用程序以最少的步骤或配置克隆一台服务器,或快速安装新节点到现
有的 ER 复制域。当运行 ifxclone 实用程序时,从服务器节点获得的大部分安装信息会被
克隆。要成功地克隆服务器可能仍需一些配置后步骤,以获得更好地运行的系统。
源服务器是包含希望被克隆日期的服务器。
目标服务器是从源服务器中加载数据的服务器。
您必须从目标服务器运行 ifxclone 实用程序。
要在 UNIX™ 上运行 ifxclone 实用程序,
在目标服务器上您必须以用户 root 、
gbasedbt 或
gbasedbt 群组成员的身份运行该命令。您也必须是源服务器的 DBSA。
要在 Windows™ 上运行 ifxclone 实用程序,
在目标服务器上您必须以本地管理员群组成员
的身份运行该命令。也必须是源服务器的 DBSA 并且在源服务器上您必须隶属于
Gbasedbt-Admin 群组。
ifxclone 实用程序使用来自源服务器的 onconfig 和 sqlhosts 配置文件配置目标服务器。
ifxclone 实用程序配置一些额外配置设置,
不仅仅是配置克隆服务器的那些要求。
--autoconf
选项提供额外配置 sqlhosts 文件记录的能力 ,之后会传播 sqlhosts 并对高可用集群服务
器或 Enterprise Replication 域信任主机文件信息。Ifxclone 实用程序并不意味着要配置所
有可能的配置选项,而是提供克隆源服务器所需的足够的配置。
可以使用大小参数来配置 CPU VP 和缓冲区的数量。
表 1 列出了创建在目标服务器上每
一大小选项的 CPU VP 和缓冲池的数量。
目标系统创建之后,
应执行额外细化的生成配置。
如果大小配置省略,则使用在源服务器上配置的参数。
表 1. 大小参数值列表

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 389 -

大小 CPU VP 数量 缓冲池数量
tiny
1
50,000
small 2
100,000
medium 4
250,000
large 8
500,000

可以使用 -c 选项在目标服务器上指定配置参数及其值。
也可以使用已有的配置文件。
如果
目标服务器包含与源服务器配置文件不同的配置文件,
ifxclone 实用程序不会重写该文件但
是会修改那些克隆过程中必须与源服务器匹配的参数。
如果目标服务器位于与源服务器相同的主机上,那么需要使用 useLocal (-L) 参数。
如果指定了 useLocal 参数,ifxclone 实用程序会合并主服务器的 onconfig 文件和目标服
务器的 onconfig 文件。所有服务器的前提条件 列出的配置参数会被 ifxclone 实用程序重
写,其余的参数则不会受影响。
如果 useLocal 参数没有被指定为输入参数,ifxclone 实用程序使用源服务器的 onconfig
文件作为目标服务器的 onconfig 文件并且使用 ifxclone 实用程序输入的参数作为服务器
的名称。
如果没有指定 useLocal 参数,ifxclone 实用程序使用目标服务器条目更新主机上的
sqlhosts 文件并且复制这些条目到目标服务器的 sqlhosts 文件中去。
以下是 ifxclone 参数选项的优先顺序:
l 在源服务器上 --configParm (-c) 参数优先于配置文件。
l --size (-s) 参数优先于合并的配置参数或本地配置文件中的设置。
l --configParm (-c) 参数优先于 --size (-s) 参数。
l 必须在每个服务器上相同的参数优先于所有其他选项。
所有服务器的前提条件
克隆服务器前请执行以下前提条件:
l 有关服务器硬件和软件的要求与与 HDR 辅助服务器的要求相同。
(参考特定支持
平台的machine notes)
l 源服务器和目标服务器必须在可信任的网络环境下。有关可信任环境的信息请参阅
Network security files 。
l 如果目标服务器的配置被指定为 ER 或 RSS ,
那么在源服务器上您必须提供用户
有连接到 sysadmin 数据库的权限。缺省情况下,仅允许用户 gbasedbt 连接
sysadmin 数据库。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 390 -

l 同一时刻只能执行一次服务器克隆。直到第一次克隆完全结束才能开始第二次克
隆。
l 源服务器必须将 onconfig 文件中的 ENABLE_SNAPSHOT_COPY 配置参数设置
为 1 。
l 目标服务器必须没有旧 ROOTPATH 页。如果目标服务器有旧 ROOTPATH 页,
那么创建一个零长度的 ROOTPATH 文件或将目标服务器的 onconfig 文件中的
FULL_DISK_INIT 配置参数设置为 1。
在克隆服务器的过程中不允许执行存档操作命令(例如:ontape 和 ON-Bar 命令)。请在
开始克隆服务器之前执行存档活动。
在开始克隆服务器之前,必须在目标服务器上设置以下环境变量:
l GBS_HOME
l GBS_DATA
必须在源和目标服务器上标识以下配置参数的值:
l DRAUTO
l DRINTERVAL
l DRTIMEOUT
l LOGBUFF
l LOGFILES
l LOGSIZE
l LTAPEBLK
l LTAPESIZE
l ROOTNAME
l ROOTSIZE
l PHYSBUFF
l PHYSFILE
l STACKSIZE
l TAPEBLK
l TAPESIZE
如果目标服务器中的 MIRROR 配置参数可用,那么以下配置参数必须在源和目标服务器
之间相匹配:
l MIRRORPATH
l MIRROROFFSET
数据库服务器在源和目标服务器上允许只有某些组合 MIRROR 配置参数。请参阅 表 2.
表 2. 源和目标服务器上 MIRROR 配置参数允许的设置

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 391 -

设置于源服务器上的
MIRROR 配置参数
设置于目标服务器上
的 MIRROR 配置参数
允许或不允许
No
No
允许
Yes
Yes
允许
Yes
No
允许
No
Yes
不允许。如果配置了该设置,那么服务器
会在目标服务器的 onconfig 文件中提
出警告并禁用 MIRROR 参数。

克隆 RS 辅助服务器的前提条件
1.
在目标服务器上设置一下环境变量:
l GBS_HOME
l GBS_DATA
2.
在目标服务器上,创建存在于源服务器上所有的 chunk 和镜像 chunk 。如果目标服
务器使用镜像,
那么镜像 chunk 的路径必须与其在与服务器上的路径相匹配并且这些
chunk 必须存在。执行以下步骤来为目标服务器创建 chunk 和(如果必要)镜像
chunk :
a. 在源服务器上,运行 onstat -d 命令显示 chunk 和 镜像 chunk 的列表:
onstat -d
b. 在目标服务器上,以用户 gbasedbt 的身份登录并使用命令 touch 、chown 和
chmod 创建被 onstat -d 命令报告的 chunk 。例如,要创建名为
/usr/gbasedbt/chunks/rootdbs.chunk 的 chunk,请执行以下步骤:
$ su gbasedbt
Password:
$ touch /usr/gbasedbt/chunks/rootdbs.chunk
$ chown gbasedbt:gbasedbt /usr/gbasedbt/chunks/rootdbs.chunk
$ chmod 660 /usr/gbasedbt/chunks/rootdbs.chunk
c. 对 onstat -d 命令报告的每个 chunk 重复执行上一步中的所有命令。
3.
在目标服务器上,运行带适当参数的 ifxclone 实用程序。
4.
可以选择在目标服务器上创建 onconfig 和 sqlhosts 文件。
示例 1,使用源服务器配置克隆一台 RS 辅助服务器

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 392 -

该示例显示了如何使用来自源服务器上的 onconfig 和 sqlhosts 配置文件配置服务器。
在本示例中,忽略了 -L 选项引起的 ifxclone 实用程序从源服务器检索重要配置信息。该
配置文件作为创建目标服务器配置的模板。使用 ifxclone 实用程序创建配置文件可以节省
时间并减少其向配置文件中介绍错误的的机会。
对于本示例,假设源服务器 (Amsterdam)将 sqlhosts 文件配置如下:
#Server Protocol HostName Service Group
Amsterdam onsoctcp 192.168.0.1 123 -
还必须具有目标服务器的名称、IP 地址和端口号。本示例使用了以下信息:
l 源:服务器名称 Amsterdam
l 源 IP 地址:192.168.0.1
l 源端口: 123
l 目标服务器名称: Berlin
l 目标 IP 地址: 192.168.0.2
l 目标端口: 456
1.
在目标服务器上,
以用户 gbasedbt 的身份登录并使用 touch 、
chown 和 chmod 命令
创建 chunk、
更改其所有者并更改其许可权。
Chunk 路径必须与 chunk 在源服务器上
的路径匹配。
2.
在目标服务器上,运行 ifxclone实用程序:
ifxclone -T -S Amsterdam -I 192.168.0.1 -P 123 -t Berlin -i 192.168.0.2 -p 456 -d
RSS
ifxclone 实用程序修改源服务器上的 sqlhosts 文件,并在新目标服务器上创建该文件的副
本。目标服务器上的 sqlhosts 文件与源服务器上的相同:
#Server Protocol HostName Service Group DEFAULT
Amsterdam onsoctcp 192.168.0.1 123 - N
Berlin onsoctcp 192.168.0.2 456 N
示例 2,通过合并源服务器配置克隆 RS 辅助服务器
使用 -L (--useLocal) 选项在远程主机上创建服务器的克隆:-L 选项用于将源 onconfig 文
件配置信息与目标 onconfig 文件合并。此选项还将把源 sqlhosts 文件复制到目标服务器。
本示例使用以下信息:
1.
源服务器名称: Amsterdam
2.
源 IP 地址:192.168.0.1
3.
源端口: 123
4.
目标服务器名称: Berlin
5.
目标 IP 地址: 192.168.0.2

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 393 -

6.
目标端口: 456
1.
在目标计算机上创建 onconfig 和 sqlhosts 文件并设置环境变量。
2.
在目标服务器上,
以用户 gbasedbt 的身份登录并使用 touch 、
chown 和 chmod 命令
创建 chunk、
更改其所有者并更改其许可权。
Chunk 路径必须与 chunk 在源服务器上
的路径匹配。
3.
在目标服务器上 ,运行 ifxclone 实用程序:
ifxclone -T -L -S Amsterdam -I 192.168.0.1 -P 123 -t Berlin -i 192.168.0.2
-p 456 -d RSS
示例 3,向集群添加一台 RS 辅助服务器
该示例显示了如何向现有的 GBase 8s 高可用性集群添加 RS 辅助服务器。本示例使用以
下信息:
l 源服务器名称: Amsterdam
l 源 IP 地址:192.168.0.1
l 源端口: 123
l 目标服务器名称: Berlin
l 目标 IP 地址: 192.168.0.2
l 目标端口: 456
1.
在目标计算机上创建 onconfig 和 sqlhosts 文件并设置环境变量。
2.
在目标服务器上,
以用户 gbasedbt 的身份登录并使用 touch 、
chown 和 chmod 命令
创建 chunk、
更改其所有者并更改其许可权。
Chunk 路径必须与 chunk 在源服务器上
的路径匹配。
3.
在目标服务器上 ,运行 ifxclone 实用程序:
ifxclone -T -L -S Amsterdam -I 192.168.0.1 -P 123 -t Berlin -i 192.168.0.2
-p 456 -s medium -d RSS
克隆 ER 服务器的前提条件
在尝试克隆 ER 服务器前请完成以下前提条件。
1. 源服务器(要被克隆的服务器)必须有 ER 配置并激活。
2. 对于指定目录名的配置参数,其目录名必须存在于目标服务器上。例如:如果在源
服务器上要将 CDR_LOG_STAGING_DIR 配置参数设置为目录名,
那么此目录也
必须在目标服务器上存在。
3. 如果源服务器上的 ATS 或 RIS 可用,那么目标服务器上必须有适当的 ATS 或
RIS 目录。如果目录不存在那么 ATS/RIS spooling 将会失败。
4. 如果源服务器已设置了 CDR_SERIAL 配置参数,
那么您必须在要克隆的服务器上
将 CDR_SERIAL 的值设置成不同的值。
在所有复制服务器上,
CDR_SERIAL 的

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 394 -

值必须都不相同。可以在 ifxclone 命令行中使用 --configParm (-c) 参数指定
CDR_SERIAL 配置参数的唯一值。
5. 新 ER 克隆上的时间必须适当同步。请参阅 Time Synchronization.
6. 源服务器(要被克隆的服务器)必须没有任何已停止或暂停的复制,也不能有任何
影子复制定义。
在 ifxclone 实用程序运行过程中,避免执行更改目标服务器参与的复制集的 ER 管理任
务。
示例:创建一台 ER 服务器克隆
假设有五台服务器:S1、S2、S3、S4 和 S5。它们在 ER 域中并配置为根服务器。您想要
在名为 machine6 的电脑上添加新的服务器—— S6,并且希望它拥有和 S3 服务器一样的
数据。
1. 在 machine6 上安装并配置 GBase 8s 数据库软件。您可以使用部署实用程序部署
预配置的数据库服务器实例。
2. 将 S3 服务器上的 sqlhosts 文件辅导到 S6 服务器并修改它,
为新服务器添加新条
目。例如,假设新服务器的 ER 群组名为 g_S6 且ID 为 60,sqlhosts 文件将添
加如下新行:
g_S6 group - - i=60
S6 onsoctcp machine6 service6 g=g_S6
3. 向其他五台服务器( S1 到 S5)上的 sqlhosts文件中添加以上两行内容。
4. 将 S3 服务器上的 onconfig 文件复制到 S6 服务器。
并将 DBSERVERNUM 配置
参数更改为 S6 服务器的端口号。不要修改除路径信息以外的任意存储或 chunk
参数。
5. S6 服务器 (machine6) 提供 chunk 路径和其他存储到服务器 S3 大小相同。确保
S6 有足够的内存和磁盘空间资源。
6. 以用户 gbasedbt 的身份运行以下命令:
ifxclone -L -S S3 -I machine3 -P service3 -t S6 -i machine6 -p service6
-d ER
执行时,输入用户 gbasedbt 的用户名 gbasedbt 及其密码。
7. 监视 S6 和 S3 服务器的服务器日志。
当克隆进程结束后,
可以在服务器 S3 和 S6
上运行以下命令来检查服务器的状态:
cdr list server
您可以看到新的 ER 服务器 g_S6 连接了所有其他五台服务器。此外,ER 节点 g_S6 将
加入所有 g_S3 所加入的 ER 节点。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 395 -

(1 row)
--删除表。
gbase=# DROP TABLE numeric_type_t1;
DROP TABLE

与整数类型相比,任意精度类型需要更大的存储空间,
其存储效率、
运算效率以及
压缩比效果都要差一些。在进行数值类型定义时,
优先选择整数类型。当且仅当数
值超出整数可表示最大范围时,再选用任意精度类型。

使用Numeric/Decimal 进行列定义时,建议指定该列的精度p 以及标度s。