Oracle从dump文件中提取DDL语句方法

Oracle dump文件的命令有exp/imp和expdp/impdp。对于dump文件,我们不能直接提取出data数据,但是我们可以通过相关的参数,从dump文件中提取出对应的DDL语句。

如果是导出导入(exp/imp),那么是indexfile参数;

如果是数据泵(expdp/impdp),那么是sqlfile参数。

expdp/impdp提取出的DDL语句更详细,可读性更好。

一、使用exp/imp命令

1、导出lxh用户的数据,生成dump文件

exp lxh/lxh file=lxh.dmp owner=lxh

2、从dump文件里提取DDL语句

imp lxh/lxh file=lxh.dmp fromuser=lxh touser=lxh indexfile=lxh.sql

该import命令并没有真正的import data,而只是生成了我们对应用户下所有DDL的sql语句。对于表的DDL语句,用REM进行了注释。

二、使用expdp/impdp命令

1、导出lxh用户的数据,生成dump文件

expdp lxh/lxh directory=backup dumpfile=lxh.dmp schemas=lxh

2、从dump文件里提取DDL语句

impdp lxh/lxh directory=backup dumpfile=lxh.dmp sqlfile=lxh.sql

---------------END---------------

相关推荐