`
long272449358
  • 浏览: 65789 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

(转)数据库导出部分表导出失败的原因和解决办法

 
阅读更多
十二 数据库导出部分表导出失败
ORACLE 11g 新增了一个参数:deferred_segment_creation,从字面理解含义是段延迟创建,该参数取值范围是true和false,默认是true。具体是如果deferred_segment_creation为true,当新建表并且没有向其中插入数据的时候,这个表不会立即分配extent,即不占数据空间,只有insert数据后才分配空间,这样做可以节省少量的空间。如果deferred_segment_creation为false,那就和之前版本创建表一样,创建时即分配extent。
问题解决
1、批量处理所有“空表”:
select 'alter table '||table_name||' allocate extent(size 64k);' sql_text,table_name,tablespace_name
from user_tables
where table_name not in
(select segment_name from user_segments where segment_type = 'TABLE');
2、把sql_text列在sqlplus中执行一下就可以通过exp导出。
3、如果觉得每次导出都这样做太麻烦,完全可以将deferred_segment_creation参数调为false,这样调整后建的表都会立即分配空间,但是调整前的表都不会改变,因此还需要用1、2提到的办法解决。
--调整deferred_segment_creation为false:
SQL> alter system set deferred_segment_creation=false;
--调整deferred_segment_creation为默认值:
SQL> alter system reset deferred_segment_creation;
其他方法:
1、先往表中间insert一条数据,然后再rollback,使之分配空间。但是每次建表都这样做也是比较麻烦,不推荐。
2、通过move(alter table table_name move;)的办法也能得到相同的效果,因为move会使部分索引失效,所以也不推荐。
如果空间不是很紧张,还是建议把这个参数改成false。不过,如果你是用expdp代替exp的话,就不会出现这个问题。而且expdp比exp要快,只是exp先入为主,大家都比较习惯是用exp。推荐大家以后多使用expdp。
分享到:
评论

相关推荐

    IMP-00009:异常结束导出文件解决方案.docx

    IMP-00009:异常结束导出文件解决方案.docx

    EXCEL快速导入导出(增加数据库直接导出及2007文件格式支持)-易语言

    数据库导出: 表格导出: 数据库导出的效果: 表格导出的效果: 世恒原版的用了一个ODBC组件,我为了方便又增加了数据库连接组件和记录集组件。 有些时候为了代码好看就使用多个循环,其实这样会降低软件的效率,当...

    有关Azure SQL数据库导出功能的一些问题及回答-longfei1

    问题2:数据库导出失败,报错信息如下:报错1Error SQL71562: Procedure: [Schema_Name].[Procedure_Name]

    ORACLE 常用手册导入导出

    TABLES 按表方式导出时,指定需导出的表和分区的名称 PARFILE 指定传递给导出实用程序的参数文件名 TABLESPACES 按表空间方式导出时,指定要导出的表空间名 --导出 --全库导出 exp system/accp@accp --在后面的参数...

    php+mysql源码 在线报名系统 统计导出xls

    1.解决管理员admin注销任务失败的bug; 2.新增导出xls汇总表功能,有中文的表头,而不是字段名表头; 3.扩展了可用字段,包括备注和报名者修改提交时间; 4.支持多种编码,默认为GBK(GBK可添加繁体、简体的信息提交,...

    从MySQL导入导出大量数据的程序实现方法

    大家一定使用过 PHPmyadmin 里面的数据库导入,导出功能,非常方便。但是在实际应用中,我发现如下几个问题: 1 数据库超过一定尺寸,比如6M 这时使用导出一般没问题,可以正确的保存到本机硬盘上面,但是导入则...

    php版mysql大数据库备份和恢复工具

    就算导出时出现乱码,但只要原始数据完整,总有解决的办法.所以,导出时数据库字符集的选择必须正确,保证导出数据无乱码.一般为GBK,UTF8或Latin1.导出后,可以用文本编辑器先查看一下,看是否出现问号(?)等乱码. 3.导出...

    Oracle数据库管理员技术指南

    第1章 建立和配置数据库 1.1 数据库创建规划 1.1.1 规划以及提出正确的问题 1.1.2 怎样确定恰当的数据块尺寸 1.2 组织文件系统 1.2.1 怎样命名数据库文件 1.2.2 使用最佳灵活结构 1.2.3 怎样配置符合 OFA 的 ...

    mdf附加失败,mdf数据导出

    当MDF文件附加不成功怎么办??该工具可以直接读取MDF文件查看里面的数据,并且可以把数据导出到数据库里!!!!!!

    mysql数据库的导出与导入---简单版

    mysql数据库的导出与导入, 具体到每一步的操作,只需照着操作, 想失败都难啊

    mysql 导出word工具

    当需要把数据库表结构导出成word形式的时候,采用人手工写比较麻烦,由此通过这个工具可以一次性导出表结构及其注释,形成一个数据库说明文档

    SQL Server 2005/2008 导入导出数据常见报错解决方法

    数据库导入导出时总失败,错误信息如下: 正在验证 (错误) 消息 错误 0xc0202049: 数据流任务 1: 无法在只读列“ID”中插入数据。 (SQL Server 导入和导出向导) 错误 0xc0202045: 数据流任务 1: 验证列元数据失败。 ...

    oracle数据库

    查看oracle出错信息,方便解决  EXP-00000导出终止失败 原因:导出时产生Oracle错误。

    DB2DB 数据库转换工具 V1.9.5

    · 支持同步前对数据表进行检查,避免出现由于数据库自身限制的原因而导致同步失败的情况 · 支持把同步内容导出为 SQL 文件的功能 · 支持自定义选择需要同步的数据表 · 支持将配置保存为方案,以方便日后重新使用...

    Access 2000数据库系统设计(PDF)---025

    724.2 理解关系型数据库 744.3 使用Access数据库文件和表 754.3.1 Access系统数据库 754.3.2 Access 库数据库 754.4 创建一个新数据库 754.5 理解表和字段的属性 774.6 选择字段数据类型、大小和格式 804.6.1 为数值...

    数据库bcp导数据方法.txt

    可以将MSSQL数据库导出,创建同样的数据库后在进行导入,通过BCP的方式,简单,方便,快捷!在执行以下命令时,因为原数据库中的某些表可能有损坏,会导致执行失败,在错误信息前一行会显示该表名。为了让 语句能...

    导出excel错误处理

    异常详细信息: System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 ASP.NET 未被授权访问所请求的资源。请...

    SQL Server导入导出数据时最常见的一个错误解决方法

    在数据库导入导出时总失败,错误信息如下: 代码如下: 正在验证 (错误) 消息 错误 0xc0202049: 数据流任务 1: 无法在只读列“ID”中插入数据。 (SQL Server 导入和导出向导) 错误 0xc02020

Global site tag (gtag.js) - Google Analytics