在进行数据级别的迁移时,可以采用dbexport/dbimport来完成。dbexport导出数据库中所有对象的模式脚本和表数据文件,在该模式脚本中包含表等的创建脚本,同时包含了导出的表对数据文件的信息。dbimport根据模式脚本进行导入,在导入过程中首先根据模式脚本创建对象,导入相应数据的过程类似load过程。如果要加速导入,则可以先将数据库的日志模式选择为nolog模式。导入完成后再改变日志模式即可。
dbexport将数据库导出到ASCII文件或磁带中。dbimport使用dbexport产生的模式文件和数据重建数据库。用户可以通过编辑模式文件来修改dbimport生成的数据库模式。
以下例子为将数据库dbname的数据导出到/data/dbname目录下:
dbexport dbnme -c -ss -o /data/dbname
导出完成后,在dbname目录下生成一个dbname.exp的目录,找到该目录下的
dbname.sql模式脚本文件,需要利用工具来验证一下脚本语法的正确性(导出的脚本可能存在语法上的错误),如有需要,则应加以修改纠正。
以下例子为将上述导出的数据以缓冲日志模式导入default_dbspacename中:
dbimport dbname -i /data/dbname -c -l buffered -d default_dbspacename
导入完成后,进行数据库级别的统计更新:
update statistics