GBase 8s 的导入导出工具介绍

GBase 8s 提供多种导入导出工具,本文章介绍的导入导出工具包括:dbexport/dbimport、dbload、dbschema、load/unload、onload/unonload。 

一、dbexport 和 dbimport 

       dbexport 和 dbimport 实用程序向存储在磁盘或磁带中的文本文件导入或导出数据库

       dbexport 实用程序将整个数据库卸载到文本文件并创建模式文件。可以通过 dbimport,使用该模式文件在另一个 GBase 8s 环境中重新创建数据库模式,并且您还可以编辑模式文件以修改dbimport 创建的数据库。

       如果您无法使用 onunload 和 onload 实用程序并且您想要将数据库(带或不带其模式文件)卸载到磁盘或磁带,那么您可以使用 dbexport 和dbimport 实用程序。

       dbimport 实用程序用于创建数据库,它使用磁带或磁盘上文本文件中的数据来装入数据库。输入文件由用来重新创建数据库的模式文件和包含数据库数据的数据文件组成。通常使用 dbexport 实用程序生成输入文件,但您也可以使用任何适当格式的输入文件。 

        注意: 导入数据库时,请使用与创建该数据库时使用的相同的环境变量,否则可能得到预料之外的结果。如果有任何使用与 dbimport 用的设置不同的设置创建的分段存储表达式、检查约束、触发器或用户定义的例程, 则无法使用单个的导入准确地重新产生数据库。 

二、dbload 

       dbload 实用程序将数据装入 GBase 8s 产品创建的数据库或表中。它将数据从一个或多个文本文件传送到一个或多个现有中。

       此实用程序支持 所有 GBase 8s 版本中的新数据类型。

       先决条件: 如果数据库包含基于访问控制 (LBAC) 对象,那么dbload 实用程序只能装入您的安全标号控制其列安全标号或行安全标号的那些行。如果要装入整个表,那么必须具有写入所有标注的行和列的必要 LABC 凭证。

       不能在高可用性集群中的辅助服务器上使用 dbload 实用程序。当您使用 dbload 实用程序时,可以操纵正在装入的数据文件或访问正在装入的数据库。尽可能使用 LOAD 语句,它比 dbload 要快

       dbload 实用程序给了您极大的灵活性,但它没有其他方法快,并且您必须准备一个命令文件来控制输入。您可将多种格式的数据用于 dbload。

       dbload 实用程序与 LOAD 语句相比,有以下优点:

  •        可使用 dbload 从使用通过多种格式排列创建的输入文件中装入数据。dbload 命令文件可适应来自完全不同的数据库管理系统的数据。
  •        通过指示 dbload 进行读取但忽略 x 个行,可在装入中指定一个起始点。
  •        可指定批处理大小,这样在每插入 x 个行之后就落实该插入。
  •        可限制读取的坏行数,超过该数则 dbload 结束。

       dbload 灵活性的代价是时间和花在创建 dbload 命令文件上的精力,这是 dbload 运行所要求的。输入文件不作为 dbload 命令行的一部分进行指定,也不是要插入数据的表。此信息包含在命令文件中。 

三、dbschema 

       dbschema 实用程序显示复制数据库对象所需的 SQL 语句(模式)。

       也可以将 dbschema 实用程序用于以下用途:

  •        显示 UPDATE STATISTICS 语句创建的分发。
  •        显示 Information Schema 视图的模式
  •        显示用于创建对象(例如数据库、表、序列、同义词、存储空间、块、日志、角色和特权)的模式
  •        显示用于创建对象(例如数据库、表、序列、同义词、角色和特权)的模式
  •        显示为数据库中的一个或多个表存储的分发信息
  •        显示有关用户定义的数据类型和行类型的信息

       在获取数据库的模式之后,您可以将 dbschema 输出重定向到通过DB-Access 使用的文件。

       如果配置了 UPDATABLE_SECONDARY 配置参数和 STOP_APPLY 配置参数,那么所有只读辅助服务器上都支持 dbschema 实用程序。

       所有可更新的辅助服务器上都支持 dbschema 实用程序。

       只读辅助服务器上也支持 dbschema 实用程序。但是,dbschema 实用程序在这些服务器上运行时,会显示一条警告消息。

       注意: 使用 dbschema 实用程序可以增加数据库中的序列对象,而在生成的数字中创建间隔则可能不是那些需要序列化整数的应用程序所期望的。支持 DATABASE.OBJECT 之后 dbschema 实用程序增加-o 参数,-o 对象名(例如:-o pkg1)导出指定数据库对象,-o all 导出 ORACLE 模式下创建的所有包、存储过程、函数等数据库对象,导出内容格式中不再包括 owner.引用。导入时使用方法与目前用法保持一致。 

四、LOAD 和 UNLOAD

       可以使用 SQL LOAD 和 UNLOAD 语句来移动数据。LOAD 语句速度较快且较易于使用,但它只接受指定的数据格式。通常可将使用 UNLOAD 语句准备好的数据用于 LOAD 语句。

       你可以使用 DB-Access 中的 UNLOAD 语句从表中将选定的行卸载到文本文件。

       UNLOAD 语句允许您在卸载数据时对其进行操作,但它要求将数据卸载到磁盘上的文件而非磁带。如果卸载到磁盘文件,可能需要使用 UNIX™ 、Linux™实用程序将这些文件装入到磁带上。

       要装入表,请使用 LOAD 或 dbload。要操纵正在装入的数据文件或在装入数据库时要对其进行访问,请使用 dbload 实用程序。灵活性是以花在创建dbload 命令文件上的时间以及较慢的执行速度为代价的。尽可能使用 LOAD语句,它比 dbload 要快。

       如果数据库包含基于标签的访问控制 (LBAC) 对象,那么只能装入或卸载您的安全标签控制其列安全标签或行安全标签的那些行。如果要装入或卸载整个表,那么必须具有写入/读取所有标注的行和列的必要 LBAC 凭证。

五、onunload 和 onload、

       onunload 和 onload 实用程序提供在相同平台上使用相同数据库服务器的计算机之间移动数据的最快方法

       例如:假设您的站点购买了性能更强的 UNIX™ 计算机,使用户更快地进行访问。您需要将现有数据库传送到新计算机上的新数据库服务器。使用onunload 从第一个数据库服务器卸载数据,然后使用 onload 将数据装入第二个数据库服务器。两个数据库服务器都必须具有相同或兼容的版本号。您可移动整个数据库或只移动选定的表,但无法修改数据库模式。

       onunload 实用程序可比 dbexport 或 UNLOAD 语句更快地卸载数据,因为 onunload 以二进制格式和以页大小为单位复制数据。onload 实用程序使用onunload 实用程序创建的磁带或文件并重新创建数据库或表。

       onunload 和 onload 实用程序比 dbimport、dbload 或 LOAD 要快,但相比之下灵活性小很多,并且不允许您修改数据库模式或从一个操作系统(或数据库服务器)版本移动到另一个。 

      有关何时使用 onunload 和 onload 实用程序的准则:

       仅当满足特定条件时,才能使用 onunload 和 onload。

       仅当您对以下每个问题的答案都是是时,才可以使用 onunload 和onload。 如果您的答案是否,那么不能使用 onunload 和 onload。 

       

仅当对每个问题的答案都为“是”时,才可以使用 onunload 和 onload 

目标数据库服务器在同一硬件平台上吗?

想要移动到相同版本的另一数据库服务器吗?

想要保持现有数据库模式而不进行更改吗?

想要移动整个数据库或整个表吗?

页面映像是兼容的吗?

数值表示方法是相同的吗?

       无法使用 onunload 和 onload 实用程序的情况:

  •        您无法使用 onunload 和 onload:
  •        在 GLS 和非 GLS 数据库之间移动数据。
  •        将压缩的数据从一个数据库移到另一个。
  •        在使用 onload 和 onunload 实用程序之前,您必须将压缩表和分段中的数据解压缩。
  •        移动外部表或包含外部表的数据库。
  •        使用 onunload 实用程序之前,必须删除所有外部表。
  •        移动包含扩展或智能大对象数据类型的表和数据库 

六、onmode

       使用 onmode 实用程序的 -b 选项可还原到所转换的较旧版本的数据库服务器。

       转换数据库服务器时,若干修改将使数据库的格式无法兼容较旧的版本。onmode -b 命令可以修改数据,这样较早版本的数据库服务器就可以访问这些数据。

       转换数据库服务器时,若干修改将使数据库的格式无法兼容较旧的版本。onmode -b 命令可以修改数据,这样较早版本的数据库服务器就可以访问这些数据。在某些情况下,不同版本之间的数据库格式是兼容的,因此不需要 onmode -b 命令。输入 onmode -b 可查看数据库服务器可用的选项的用法消息。

       该实用程序不会还原不影响兼容性的对数据布局所作的更改。

       在用户可以使用较早版本的数据库服务器存取数据之前,您必须还原数据库。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值