用定时器 + bat脚本做oracle的备份,已经备份了几个月了。这几天突然发现备份出来的dmp数据完全没法重新导入到新的数据库中。
起初以为是版本问题,或者导出参数的问题,于是在网上不停的搜索、尝试,最后还是没发现问题原因。
算了还是研究一下导入日志中的错误,于是将日志中出错误的表尝试单独导出,居然出现EXP-00011::表不存在 错误,可是数据库中明明有这个表呀。根据这个方向再上网一查,终于找到原因了,原来在11g中空表是默认是不占Segment的,导致备份导出的时候压根就没导出那些空表,这样才出现备份的dmp没法导入的问题,敢情我几个月的备份工作都白做了。
可ORACLE 你妈X的,备份导出时没导出空表这么大的事情你居然没有任何提示,你他*妈的是为了创造客服赚钱的机会么?
哎,处理过程如下:
1.用system帐号进入:
1.1 查看是否为true
show parameter deferred_segment_creation;
1.2 修改为false
alter system set deferred_segment_creation=false;
2.用数据库帐号登录:
2.1 查找所有数据表为空的表
select table_name from user_tables where NUM_ROWS=0;
2.2 把这些表组成修改Segment的脚本:
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
2.3 将2.2中查询的结果导出来,或者复制出来,并执行修改所有空表。
这个时候就能把所有空表导出来了。
感谢以下两位的帖子,给了我很大帮助
http://arthas-fang.iteye.com/blog/875258
http://wanwentao.blog.51cto.com/2406488/545154
分享到:
相关推荐
Oracle 11g R2 中 exp 无法导出空表的解决方法 Oracle 11g R2 中新增的特性,使得 exp 无法导出空表,这是因为 11g R2 中有一个新特性,即当表无数据时,不分配 segment,以节省空间。这种情况下,使用 exp 命令...
关于R2无法exp出空表的方法。考虑到节省空间,oracle11g r2不给空表分配segment,具体办法见附件。
Oracle 11g R2 执行export导出时空表无法导出原因及解决方法 Oracle 11g R2 版本中,在执行export导出时,可能会出现空表无法导出的问题,本文将会详细介绍这个问题的原因和解决方法。 问题原因 在 Oracle 11g R2...
通过以上方法,可以有效地解决 Oracle 11G R2 中空表无法通过 exp 导出的问题。在处理大量数据时,使用 expdp 和 impdp 工具不仅可以导出空表,还提供了更多的控制选项,比如并行导出、按条件过滤数据等,提高了数据...
在Oracle 11g R2中,exp已经更新为expdp(Data Pump Export),它提供了更快的导出速度和更高级的选项,例如并行导出、表空间过滤以及导出元数据等。 2. **imp工具**:Import工具则用于将exp创建的转储文件中的数据...
在Oracle 11g R2版本中,数据泵提供了比传统的EXP和IMP工具更加强大和灵活的功能。以下是对“数据泵的方法迁移oracle11gR2完整版”这一主题的详细说明。 1. **数据泵介绍**: - 数据泵(DB Pump)是Oracle 10g引入...
### Oracle 数据导入导出详解 #### 一、Oracle 数据迁移...对于特定版本的问题,例如 Oracle 11g R2 中空表无法导出的情况,可以通过修改配置或者使用其他技巧来解决。这些技术和策略对于确保系统的稳定运行至关重要。
本文详细介绍了Oracle 11G数据库中空表导出的问题及其两种解决方案,并深入探讨了Oracle提供的导出工具`EXP`和导入工具`IMP`的使用方法。通过以上内容的学习,可以更好地理解和掌握在LINUX环境下如何高效地管理...
### Oracle 8i R2 (8.1.6) 手工建库详细步骤与配置说明 #### 系统环境概述 在进行Oracle 8i R2 (8.1.6) 手工建库之前,需确保系统环境满足以下条件: 1. **操作系统**:Windows 2000 Server,机器内存至少为128MB...
这里,我们使用 exp 命令将 Windows 服务器下的 Oracle 数据库导出到本地 D:\backup 目录中。exp 命令可以根据需要导出特定的用户数据和权限。 五、数据库导入 数据库导入是指将数据从一个数据库导入到另一个...
在Oracle 11g R2版本中,有一个新特性——当表中没有数据时不会分配segment,以节省磁盘空间。这可能会导致使用`EXP`工具导出空表时出现问题。以下提供两种解决方案: 1. **插入一行然后回滚:** - 此方法适用于...
- 能够访问同一平台上的 Oracle 10g R2 安装。 ##### 2. 安装步骤 - 从 Oracle 的官方网站下载以下四个文件: - instantclient-basic-linux32-10.2.0.3-20061115.zip - instantclient-jdbc-linux32-10.2.0.3-...
Oracle数据库自推出以来经历了多个版本的发展,从最初的版本到最新的Oracle 11g R2,尽管每个版本之间存在一些操作差异,但其对数据的基本操作均遵循SQL标准。因此,对于开发者而言,掌握Oracle的基本操作是非常重要...
在11g R2(11.2)系列中,0.4是最稳定和广泛使用的补丁集,它包含了之前所有修复的bug和安全更新。 2. **imp (Import)**: 这是Oracle数据库的内置实用程序,用于从.dmp文件中导入数据,这些文件是由exp(Export)...
通过本文的学习,我们深入了解了Oracle数据库的基本操作、数据导出导入方法、Excel与Oracle的交互流程、系统上下文函数的使用以及SQL打印技巧。这些知识对于Oracle初学者来说至关重要,能帮助他们更高效地管理和操作...
在本文中,我们将详细介绍如何在Windows Server 2008 R2环境下使用Oracle 11g (11.2.0.3)进行数据库自动备份的方法。主要涉及的备份工具包括expdp(数据泵)和exp。 #### 数据泵(expdp) **特点**: - **快速数据...
需要安装的软件包括Oracle 10g R2 Clusterware、Database软件以及升级包到10.2.0.4版本。在安装过程中,会设置HOSTS文件以确保节点间的通信,校准时间同步,并创建Oracle用户和用户组,设置相应的环境变量。此外,还...
软件需求包括Oracle 10g R2 Clusterware、Database以及10.2.0.4升级包。 3. **安装与配置**:首先安装操作系统和必要的支持程序包,然后配置两个节点的HOSTS文件以确保网络连通性。时间同步是集群环境中非常重要的...
- **Win7安装Oracle 10g R2时遇到的问题**:如果安装过程中出现类似`java.lang.Exception: Exception in sending Request: null`的错误,可以检查 `$ORACLE_HOME/db_1/$HOSTNAME/sysman/config/emd.properties` 文件...