informix数据迁移工具使用介绍

时间:2023-03-08 17:16:08
informix数据迁移工具使用介绍

一.dbschema

 USAGE:
    dbschema [-q] [-t tabname] [-s user] [-p user] [-r rolename] [-f procname]
             [-hd tabname] -d dbname [-w passwd] [-seq sequence] [-l [num]]
             [-u [ia] udtname [all]] [-it [Type]] [-ss [-si]] [filename]
 EG:
 1)dbschema -d my_dbname -t all my_table.sql
   解析:导出数据库my_dbname中所有的表结构到文件my_table.sql 
 2)dbschema -d my_dbname -f all my_proce.sql
   解析:导出数据库my_dbname中所有的存储过程到文件 my_proce.sql
 3)dbschema -d my_dbname my_all.sql
   解析:导出数据库my_dbname中所有的对象(表结构,存储过程,触发器等等...)到文件my_all.sql
 4)dbschema -d my_dbname -t tab_name  tab_name.sql
    解析:导出数据库my_dbname中表名称tab_name到文件.sql tab_name.sql
 5)dbschema -d my_dbname -f pro_name  pro_name.sql
    解析:导出数据库my_dbname中存储过程名称pro_name到文件.sql pro_name.sql
  6)dbschema -d my_dbname -ss   my_dbname .sql
    解析:导出更多的表的信息(EXTENT...)
  7)dbschema -d your_database_name -p all
     dbschema -d your_database_name -r all
     解析:导出数据库中对用户或角色的授权信息
  8)dbschema -d your_database_name -s all
     解析:导出数据库中的同义词     
  9)dbschema -t all -p all -f all -s all -d mydbname -ss mydbname.sql
   解析:导出数据库名称为mydbname的所有表结构、用户授权信息、存储过程、及同义词到文件mydbname.sql
二.dbaccess
   1)使用方法介绍:
   Query-Language→提供管理者一个SQLeditor,可自行输入SQL指令并执行 
   Connection→建立或断开与数据库服务器的连接 
   Database→提供管理者管理数据库的建立、异动与删除 
   Table→提供管理者管理数据表的建立、异动与删除 
   Session→描述数据库服务库和主机 
   Exit→退出DBACCESS
  informix数据迁移工具使用介绍
   New→清除Editor画面,输入SQL指令 若输入多条SQL语句,请用“;”将SQL语句分割开 
   Run→执行Editor中所输入之SQL指令 
   Modify→修改Editor中所输入之SQL指令 
   Use-editor→使用DBEDIT所指定的Editor当编辑器 
   Output→将执行结果产生至打印机或档案 
   Choose→选择已建立好的SQL档案复制到Editor*使用 
   Save→Editor中所输入的SQL指令存至Editor*以后参考使用 
   用户要保存的目标文件名最大长度为10个字符,DB-ACCESS自动为其添加扩展名“.sql” 
   Info→查询DATABASE与TABLE的资讯 
   informix数据迁移工具使用介绍
   Columns→显示指定表的列的信息,包括数据类型和是否允许为空值 
   Indexes→显示指定表的索引的名字、拥有者和类型(唯一索引和普通索引)
   Privileges→列出具有表级插入、删除等权限的用户列表
   References→列出对指定表中的列具有关联权限的用户 
   Status→列出表的状态信息,字段数、记录数、行的大小、创建日期 
   Constraints→关联、主码、唯一限制和列的默认值 
   Triggers→触发器的相关信息 
   Table→选择表 
   Fragments→表的空间分配策略 
   informix数据迁移工具使用介绍
   Connect→可以和特定的数据库建立联系 

Disconnect→可以断开当前数据库服务器的连接

   informix数据迁移工具使用介绍
   更多信息请查看http://wenku.baidu.com/view/5da801bdf121dd36a32d828a.html 
    2)dbaccess my_dbname  my_dbname.sql 
      解析:将文件my_dbname.sql 导入my_dbname数据库中(与dbschema命令组合使用)
  EG:
   A.简单执行SQL文件

dbaccess testdb sqlfile.sql 或者  dbaccess testdb@testserver sqlfile.sql
   B.执行输出打印执行语句及执行结果
   dbaccess -e testdb sqlfile.sql
   C.将执行结果重定向到文件(shell: bash)
   dbaccess -e testdb sqlfile.sql > output.log > 2&1
   cat output.log
   1}执行SQL脚本文件时,当出错时打印详细的错误信息
   dbaccess -e -m testdb sqlfile2.sql
   2.}执行SQL脚本文件时,当出错时打印详细的错误信息并在出现第一个错误时,停止继续执行后续的语句
   dbaccess -e -m -a testdb sqlfile2.sql

→可以和特定的数据库建立联系

Disconnect

→可以断开当前数据库服务器的连接

三.dbexport
  作用:dbexport导出数据库中所有对象的模式脚本和表数据文件,该模式脚本中包含有表等的创建脚本,同时包含了导出的表的对于数据文件的信息;
  Usage:

dbexport <database> [-X] [-c] [-q] [-d] [-ss [-si]]
  [{ -o <dir> | -t <tapedev> -b <blksz> -s <tapesz> [-f <sql-command-file>] }]

  参数详解: 

-X 如果某个字符串字段中包含二进制数据,加上该参数后,dbexport将重新组织这些数据。
-c 除非很严重的错误dbexport才中断,这些错误如下:
   不能打开你指定的磁带设备;
   不能写磁带设备或文件;
   不正确的命令行参数;
   不能打开数据库或没有连接数据库的权限;
-q 不用将导出过程输出到屏幕上
-d 让dbexport只导出BLOB字段的描述符,而不导出BLOB数据
-ss 能够生成更详细的信息,比如:
    初始和附加extent的尺寸;
    表的分片信息;
    对表的锁的模式(行锁或页锁);
    表所在的dbspace或BLOB数据所在的space;
-o <dir>
可以将数据库导入到你指定的目录下
-t <tapedev> -b <blksz> -s <tapesz>
将数据导入到磁带
-f <sql-command-file>
dbexport在导出数据的同时会产生一个DDL的文件,你可以指定一个绝对路径的文件
EG:
1) dbexport stores 
解析:将数据库stores导出到当前目录下
2)dbexport stores -q -c
解析:将数据库stores导出到当前目录下,不将过程输出到屏幕,并且忽略小错
3)dbexport stores -q -c -o /tmp
解析:将数据库stores导出到指定目录下
4)dbexport stores -t /dev/tape -b 2048 -s 2000000 -f /tmp
解析:将数据库stores导出到磁带上
5)dbexport stores -ss
解析:将数据库stores导出前目录下,并且加上额外的信息

四.dbimport
作用:dbimport根据模式脚本进行导入,导入过程首先根据模式脚本创建对象,如何导入相应的数据,导入数据过程类似load过程.如要加速导入,可以首先将数据库的日志模式选择为nolog模式.导入完成后进行日志模式的改变即可.
  Usage:

dbimport <database> [-X] [-c] [-q] [-d <dbspace>]
    [-l [{ buffered | <log-file> }] [-ansi]]
    [{ -i <dir> | -t <tapedev> [ -b <blksz> -s <tapesz> ] [-f <script-file>] }]
    NOTE: <log-file> must be a complete path

  dbimport  -v 显示软件版本号
 *运行dbimport的用户将对所创建的数据库拥有DBA权限
 dbimport实用程序的语法:
 -c 指示dbimport在没有发生致命错误的情况下完成装入工作.
 -q 指示在标准输出设备上不显示错误信息和警告.
 -X 标识符符字段中的HEX二进制数据.
 输入文件位置选项:
 -i 指定存储ASCII文件和模式文件的磁盘目录,以便dbimport查找.
 -t 指定含有ASCII文件和模式文件的磁带设备名.
 -b 指定磁带设备块大小.block以KB为单位,该值必须能为所使用的设备接受.
 -s 指定磁带的最大数据存储量.
 -f 指定磁盘上模式文件的路径名,以便dbimport查找模式文件,并以此为输入建立数据库.
 建库选项:
 -d 指定用来存储新建数据库的OnLine数据库空间(dbspace).如果没有使用-d选项指定dbspace,
 则数据库缺省建立在根dbspace中.
 -l 如果没有使用buffered参数,为装入的数据库建立无缓冲事务日志;如果使用了buffered参数,为装入的数据库建立有缓冲事务日志,
 -l选项等价于CREATEDATABASE语句的WITH LOG字句,如果没有使用-l选项,新建数据库不带日志.
 -ansi 为装入的数据库建立ANSI方式兼容的事务日志.
 EG:dbimport  mydbname -d mydbs [DBSPACE]
 ( 注:导入完成后,进行数据库级别的统计更新  update statistics ) 
 修改数据库的日志模式:
 ondblog unbuf 数据库名 
 ontape -s -L 0 -U  数据库名
五.load
EG:用dbaccess命令进入informix操作数据库操作界面,选择需要从中导出数据的库(sysadmin),输入下面sql 语句:
load from 【目录】test.txt insert into table_name;
informix数据迁移工具使用介绍
六.unload
EG:
unload to 【目录】test.txt select * from table_name;
informix数据迁移工具使用介绍