向数据库空间或 BLOB 空间添加块

当数据库空间、BLOB 空间或智能大对象空间将满或需要更多磁盘空间时添加块。

重要: 新添加的块及其相关联的镜像(如果存在一个镜像)立即可用。如果您正向已镜像的存储空间添加块,那么必须还添加镜像块。

要使用 onspaces 添加块,请执行以下操作:

  1. 在 UNIX™ 上,必须以用户 gbasedbtroot 身份登录来添加块。
  2. 请确保数据库服务器处于联机、管理或静默方式,或快速恢复方式的清除阶段。
  3. 分配磁盘空间中所述,为块分配磁盘空间。
  4. 要添加块,请使用 onspaces-a 选项。

    如果存储空间已镜像,那么必须为主块和镜像块都指定路径名。

    如果指定了不正确的路径名、偏移量或大小,那么数据库服务器不会创建块,并且会显示错误消息。 另见磁盘空间不足时应执行的操作

  5. 在创建块之后,必须对根数据库空间和包含该块的数据库空间、BLOB 空间或智能大对象空间执行 0 级备份。
以下示例将 10 兆字节的镜像块添加至 blobsp3。对主块和镜像块都指定了 200 KB 的偏移量。如果您不添加镜像块,那么可省略 -m 选项。
onspaces -a blobsp3 -p /dev/raw_dev1 -o 200 -s 10240 -m /dev/raw_dev2 200
下一个示例以 5200 KB 的偏移量向数据库空间 dbspc3 添加 5 MB 的原始磁盘空间块。
onspaces -a dbspc3 \\.\e: -o 5200 -s 5120

还可以定义当应用程序需要更多存储空间时,GBase 8s 可用于自动扩展块大小的信息。如果有可扩展块,那么无需添加新块或耗费时间来尝试确定哪种存储空间(数据库空间、临时数据库空间、智能大对象空间、临时智能大对象空间或 BLOB 空间)将耗尽空间,以及何时将耗尽空间。

当启用 CHUNK_OVERLAP_PROTECTION 配置参数时,数据库服务器将确保新块不会与其他块重叠。如果服务器发现块重叠,新块添加操作将失败。