Oracle如何快速导出导入存储过程、函数、package等部分元数据
在oracle日常维护工作中,测试环境有时只需要导入生产环境中部分过程等元数据,那么如何快捷有效地导入呢。两种情况,一种全部元数据导出,一种按需导出。
一、导出全部元数据
导出全部元数据
语法:content=metadata_only
--导出元数据dmp文件
[oracle@T-DB ~]$ expdp \'sys/password as sysdba\' dumpfile=pmdata_meta.dmp directory=expdump content=metadata_only schemas=pmdata exclude=statistics
--将导出的是dmp文件转成SQL文件脚本,在测试环境中运行该脚本即可
[oracle@T-DB ~]$ impdp pmdata/password directory=expdump dumpfile=pmdata_meta.dmp SQLFILE=pmdata_meta.sql
二、导出指定数据
导出指定元数据
语法:include=INDEX,TABLE,FUNCTION,VIEW,DATABASE LINK,SYNONYM,PACKAGE BODY,SEQUENCE,LOB,PACKAGE
如:只导存储过程及函数,用include来限制
--导出元数据dmp文件
[oracle@T-DB ~]$ expdp pmdata/password directory=expdp dumpfile=pmdata_function_procedure.dmp include=PROCEDURE,FUNCTION
--将导出的是dmp文件转成SQL文件脚本,在测试环境中运行脚本即可
[oracle@T-DB ~]$ impdp pmdata/password directory=expdump dumpfile=pmdata_function_procedure.dmp SQLFILE=pmdata_function_procedure.sql