今天一客户朋友咨询一个Oracle数据库用户EXP权限控制的问题,问我有没有办法可以解决.问题是这样的: 目前他们那边有外面的开发公司人员在核心系统做开发,考虑到系统数据的敏感性,给他们建了一个数据库用户test,该用户test可以做exp导出操作,但是只能导出指定的几张表,而不是所有的表test都有权限导出. 测试情况如下: 假设MEMA为业务用户,下面有(t1,t2,t3,t4,这4张表),TEST是给外面开发人员使用的用户,要求:test可以做exp导表操作,但是test用户只能导出t1表…
oracle exp 导出一个表的部分内容,使用query参数可加上SQL的where条件进行过滤 注意:如果需要使用到日期字符串格式等单引号,需要使用双引号将where条件括起来,而且双引号要用\做转义   exp test/test@testdb file=D:\test_bak.dmp log=D:\exp0811.log tables=(tbl_test) query=\"where start_time>='20160701000000' and start_time<'2…
在oracle导出表的命令exp时候发现一个问题,就是部分表全然的导不出来,经检查发现仅仅要是表为空的都会导不出来. 在例如以下表中发现segment_created都为NO的是导不出来的,经查询后,将语句提取出来运行就可以. select 'alter table '|| table_name ||' allocate extent;'  from user_tables where segment_created='NO'; alter table table allocate extent…
1.Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出. 2.设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment. 在sqlplus中,执行如下命令: SQL>alter system set deferred_segment_creation=false; 查看:   SQL>show parameter deferred_segment_creation; 该值设置后…
1.Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出. 2.设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment. 在sqlplus中,执行如下命令: SQL>alter system set deferred_segment_creation=false; 查看:   SQL>show parameter deferred_segment_creation; 该值设置后…
轻松解决oracle11g 空表不能exp导出的问题 [引用 2012-9-22 18:06:36]     字号:大 中 小 oracle11g的新特性,数据条数是0时不分配segment,所以就不能被导出. 共两种解决方法,推荐使用第二种(最简单).一.修改数据库参数alter system set deferred_segment_creation=false; 修改后,也不会导出空表,只有新建的空表才会导出,不适用,只有新建数据库时,修改此参数才比较有用.二.sql语句1.先查询一下哪些…
oracle11g导出表时会发现少表,空表导不出解决方案.   一:背景引入 oracle11g用exp命令导出数据库表时,有时会发现只导出了一部分表时而且不会报错,原因是有空表没有进行导出,之前一直没有找到方法于是用最笨的方法重新建这些空表,当然在我们实际当中表的数量大时我们该怎么办??? oracle10g版本中没有这样的问题. 于是查资料发现oracle11g有个新特性,增加了一个新特性 "deferred_segment_creation" 含义是段延迟创建,默认是true.…
一:背景引入 oracle11g用exp命令导出数据库表时,有时会发现只导出了一部分表时而且不会报错,原因是有空表没有进行导出,之前一直没有找到方法于是用最笨的方法重新建这些空表,当然在我们实际当中表的数量大时我们该怎么办??? oracle10g版本中没有这样的问题. 于是查资料发现oracle11g有个新特性,增加了一个新特性 "deferred_segment_creation" 含义是段延迟创建,默认是true. 具体是什么意思呢?我们来解释下: 如果这个参数设置为true,你…
oracle11g用exp命令导出数据库表时,有时会发现只导出了一部分表时而且不会报错,原因是有空表没有进行导出,之前一直没有找到方法于是用最笨的方法重新建这些空表,当然在我们实际当中表的数量大时我们该怎么办??? oracle10g版本中没有这样的问题. 于是查资料发现oracle11g有个新特性,增加了一个新特性 "deferred_segment_creation" 含义是段延迟创建,默认是true. 具体是什么意思呢?我们来解释下: 如果这个参数设置为true,你新创建了一个T…
一.不能导出空表的原因 1.Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出. 2.设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment. 在sqlplus中,执行如下命令: SQL>alter system set deferred_segment_creation=false; 查看:   SQL>show parameter deferred_segment_cre…