如何校验dmp文件为exp导出还是expdp导出

简介:

在Oracle数据库当中DBMS_DATAPUMP.GET_DUMPFILE_INFO()存储过程可以从dump文件中获取信息
Filetype返回以下文件类型:
0: unknown
1: Data Pump dump file
2: original Export dump file

可以通过DBMS_DATAPUMP.GET_DUMPFILE_INFO()存储过程来判断dmp文件是通过exp导出还是expdp导出;
首先创建一个directory目录用于保存dmp文件

SQL> create or replace directory cmpa  as '/tmp/****';

Directory created.

image

然后在sqlplus当中执行如下代码:

set serveroutput on
declare
 v_filetype    NUMBER; 
 v_info_table  sys.ku$_dumpfile_info; 
begin
 dbms_datapump.get_dumpfile_info(
  filename => 'woner_****_20191204.dmp',
  directory => upper('****'), --****就是directory目录的名称
  info_table => v_info_table, filetype => v_filetype);
  dbms_output.put_line('Filetype : ' || v_filetype);
end;

image

本示例输出filetype为2,表示导出的文件是exp导出的;

还有其他的方式比如通过string或者用文本工具强行打开查看文件头也可以识别,但是这种的更官方一些;

目录
相关文章
Oracle11G用EXP导出时,空表不能导出解决
Oracle11G用EXP导出时,空表不能导出解决
|
22天前
|
存储 Windows
如何删除DMP文件
如何删除DMP文件
43 12
|
存储 Oracle 关系型数据库
oracle快速创建用户、imp/exp导入导出dmp文件
oracle快速创建用户、imp/exp导入导出dmp文件
558 0
|
关系型数据库 Oracle