js css html

第十六章 使用 ^GBLOCKCOPY 进行快速Global复制

2023-03-12  本文已影响0人  Cache技术分享

第十六章 使用 ^GBLOCKCOPY 进行快速Global复制

^GBLOCKCOPY 是一个 IRIS 例程,可在数据库之间执行快速全局复制。它有两种操作模式:交互式和批处理。交互模式是单个进程,而批处理模式允许并行运行配置和运行多个进程。 ^GBLOCKCOPY 包含一个内置监视器和几个报告来跟踪Global复制的进度。如果出现系统故障,可以在它停止的地方重新启动 ^GBLOCKCOPY

注意:因为没有对正在复制的数据库块进行锁定或完整性检查,所以 ^GBLOCKCOPY 应该仅在Global变量未被主动修改时用于复制它们。虽然 SetKill 操作可以在执行复制的源数据库中的其他Global变量以及目标Global变量、数据库或名称空间中执行而不影响副本,但如果SetKill目标Global的结果是不可预测的发生在正在复制到另一个数据库或名称空间的源全局中。

^GBLOCKCOPYGlobal复制到新数据库时,它会在那里创建具有与源Global相同属性的全局,包括保护、日志属性、排序规则类型和保留属性。

注意:SYS.Database.Copy() 类方法提供类似于 ^GBLOCKCOPY 的功能。

^GBLOCKCOPY 的使用

^GBLOCKCOPY 可用于以下几种不同的操作:

运行 ^GBLOCKCOPY

在运行 ^GBLOCKCOPY 之前(或者在执行升级之前),对数据库进行完整的操作系统备份,并运行完整性检查以确保任何数据库都没有损坏。

注意:要使 ^GBLOCKCOPY 运行得更快,请清除所有临时数据和暂存数据以及不需要的任何旧数据。

运行 ^GBLOCKCOPY 时,可以从特定数据库复制全部或部分Global。该例程提示输入要复制的Global的名称。要仅引用一些Global,语法为:

以下是用于选择全局变量的通配符:

注意:在指定Global范围时,不能使用通配符。

当选择Global的分段时,你也可以使用以下输入:

可以使用^GBLOCKCOPY的批处理功能来设置多个操作同时运行。配置批处理时,会提示每个目录的拷贝进程总数和最大拷贝进程数。每个Global最多只能运行一个进程。对于批处理模式,复制操作的持续时间与最大Global的大小成正比;存储延迟和带宽是另外的因素。在运行批操作时,可以使用监视器或批报告监视进度。

注意:用户在被^GBLOCKCOPY处理时不能访问数据库。如果在^GBLOCKCOPY运行时访问数据库操作,则数据库操作的结果不可预测。同一系统上没有被^GBLOCKCOPY处理的数据库可以安全使用。

上一篇下一篇

猜你喜欢

热点阅读