我是靠谱客的博主 纯情毛巾,最近开发中收集的这篇文章主要介绍ORACLE导出dmp文件空表无法导出,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 使用ORACLE导出dmp时发现没有数据的空表没有导出来,是因为创建完数据库后没有执行

alter system set deferred_segment_creation=false;

执行上述语句可以在表创建时让空表也占有表空间,这样导出时就不会缺少空表了。

如果已经创建数据库时没有执行,现在导出dmp时需要导出空表,执行下方语句,查询出当前数据库中的空表,以及使现有空表也占表空间的语句。

select 'alter table'|| table_name || 'allocate extent;'

from user_tables where segment_created='NO';

查出来的是如下格式的语句

alter table 表名 allocate extent;

对于空表使用当前用户挨个执行该语句,然后导出即可。

整库导出语句:

exp user/password@orcl full=y file=文件名及路径

整库导入语句:

imp user/password@ip:1521/orcl file=dmp文件地址 log=日志地址 fromuser=dmp文件用户 
touser=当前用户 constraints=N ignore=y

导入的过程中可能遇到相同的数据,可以加上 ignore=y 忽略掉重复数据只导入新数据

最后

以上就是纯情毛巾为你收集整理的ORACLE导出dmp文件空表无法导出的全部内容,希望文章能够帮你解决ORACLE导出dmp文件空表无法导出所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部