Oracle 11G R2导出空表解决与expdp/impdp使用教程
5星 · 超过95%的资源 需积分: 37 171 浏览量
更新于2024-09-16
收藏 23KB DOCX 举报
"Oracle 11G R2中存在一个问题,即使用传统的EXP工具无法导出空表,因为11G R2的新特性是当表无数据时不分配segment以节省空间。解决这个问题有两种方法:首先,可以在空表中插入一行数据,然后回滚操作,这样就会产生segment,使得空表能够被导出。其次,可以修改系统参数deferred_segment_creation为FALSE,这样无论表是否为空,都会分配segment。但这个参数的改变仅对之后创建的表生效,对于已经存在的空表,仍需使用插入并回滚的方法。此外,还可以通过查询无数据的表并执行相应的ALTER TABLE语句来强制分配extent,从而导出空表。
在Oracle 10G及之后的版本中,引入了新的数据泵工具expdp和impdp,它们可以更有效地处理导出和导入任务,包括导出空表。使用expdp和impdp,首先需要创建一个逻辑目录,这个目录在操作系统层面并不实际存在,然后赋予用户在该目录上的读写权限。接下来,可以通过指定用户、导出文件路径和目录来执行数据导出。例如,对于用户SYSTEM,可以使用如下命令:
```sql
CREATE DIRECTORY db_bak AS 'D:\test\dump';
GRANT READ, WRITE ON DIRECTORY db_bak TO system;
EXPDP SYSTEM/manager@orcls SCHEMAS=system DUMPFILE=expdp.dmp DIRECTORY=db_bak;
```
在使用expdp导出时,可以指定多个参数,包括要导出的用户、导出文件名、存储目录以及更多的选项,以便实现更灵活的数据管理和迁移。同样,使用impdp可以将这些导出的数据导入到另一个数据库中。
总结来说,Oracle 11G R2的空表导出问题可以通过修改表结构或系统参数来解决,同时expdp和impdp提供了更强大的数据导出和导入功能,能够处理包括空表在内的各种情况。在日常数据库维护和迁移中,掌握这些方法和工具是非常重要的。"
2011-11-21 上传
2012-03-01 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-12-29 上传
2012-12-27 上传
2013-01-15 上传
2017-05-23 上传
2024-11-07 上传
zongkai2012
- 粉丝: 1
- 资源: 16
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍