感谢金龙鱼先生分享,原文来自https://blog.csdn.net/kou869929526/article/details/125791113

一,编码要求以及数据库版本要求

检查数据库版本(用于决定导出时生成为哪个版本的dmp头文件)

select version from v$instance;

检查字符集是否一致(字符集不一致,不能导入)

select userenv('language') from dual; 

检查数据量及磁盘空间(决定采取什么样的方式导出及导入)

二、expdp和exp的区别

1、EXP和IMP是客户端工具程序,它们既可以在可以客户端使用,也可以在服务端使用。

2、EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用,客户端只能用来连接服务器启动导入导出操作,导出文件只存储在服务端。

3、IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件。

4、EXPDP/IMPDP在备份和恢复时间上要比EXP/IMP有着优势,而且文件要小的多。

5、使用EXPDP/IMPDP管理更加灵活。支持并行;可中断;可以修改元数据文件名字、表空间名;支持元数据导入导出;估算导出数据所需空间;指定导入数据库版本等。

三、导出示例与解释

1、创建expdp导出目录,默认导出目录为(其中前面为Oracle安装目录)。

登录服务器,root权限,创建一个导出目录。

mkdir /DATA/dump_dir

2、数据库目录指定。

create or replace directory 目录名 as '目录路径'

create directory DUMP_DIR as '/DATA/dump_dir';

注意:目录路径必须是已经存在的目录,如果目录不存在,也会显示目录常见成功(语句不会自动去常见目录),在执行expdp时候会报以下错误:

ORA-39002: 操作无效

ORA-39070: 无法打开日志文件。

3、给目录赋予权限,否则也会报2的错误。

chown -R oracle:oinstall /DATA/dump_dir

4、导出脚本

进入oracle用户,导出数据

expdp samecrow/111111 schemas=samecrow dumpfile=samecrow_20220715.dmp directory=DUMP_DIR  logfile=samecrow_20220715_imp.log CONTENT=METADATA_ONLY job_name=my_job;

其中samecrow 是数据的用户名  111111是数据库的密码   samecrow是所要导出用户的用户名,其他解释,我会放到最后。导出成功后,会在固定目录生成两个文件。这两个文件就是数据备份文件,里面只有建表数据,并不包含实际数据。

四、导入示例

前置条件与导出一样,先设置目录,再赋予权限,最后把dump文件放置到固定目录里,最后进入oracle账户,执行导入脚本,脚本如下:

impdp samecrow/111111 DIRECTORY=dump_dir DUMPFILE=samecrow_20220714.dmp LOGFILE=samecrow_20220714_imp.log SCHEMAS=samecrow REMAP_SCHEMA=samecrow:samecrow job_name=my_job

五、常用的导出命令

1、按用户导
expdp GISDATA/GISDATA@localhost/orcl schemas=GISDATA dumpfile=expdp.dmp directory=dmp logfile=expdlog.log;
2、并行进程parallel
expdp GISDATA/GISDATA@localhost/orcl directory=dmp dumpfile=expdp.dmp parallel=40 job_name=expdpjob logfile=expdlog.log
3、按表名导
expdp GISDATA/GISDATA@localhost/orcl TABLES=test1,test2 dumpfile=expdp.dmp directory=dmp logfile=expdlog.log;
4、按查询条件导
expdp GISDATA/GISDATA@localhost/orcl directory=dmp dumpfile=expdp.dmp Tables=test query='WHERE id<20' logfile=expdlog.log;
5、按表空间导
expdp GISDATA/GISDATA directory=dmp dumpfile=expdp.dmp TABLESPACES=GIDDATA,YWDATA logfile=expdlog.log;
6、导整个数据库
expdp GISDATA/GISDATA directory=dmp dumpfile=expdp.dmp FULL=y logfile=expdlog.log;

六、expdp参数说明 更多内容参考原文...

Oracle数据库expdp用法以及注意事项 (itxueyuan.com)
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/kou869929526/article/details/125791113

oracle数据导入导出,备份还原命令expdp&impdp(只导出元数据,不导出表数据,最全,最完善的步骤)的更多相关文章

  1. 用数据泵技术实现逻辑备份Oracle 11g R2 数据泵技术详解(expdp impdp)

    用数据泵技术实现逻辑备份 from:https://blog.csdn.net/weixin_41078837/article/details/80618916 逻辑备份概述 逻辑备份时创建数据库对象 ...

  2. Oracle备份 还原命令

    1.备份命令 exp username/password file=d:/test/test.dmp; 2.还原命令 imp username/password full=y file=d:/test ...

  3. oracle数据库备份还原命令

    oracle数据库备份命令exp 用户名/密码@orcl file=d:\xxxxxx.dmp owner=用户名 oracle数据库还原命令sqlplus conn / as sysdba drop ...

  4. linux备份还原命令

    使用范围:1.可以作为系统还原点,还原到备份时的状态 2.系统完全损坏后无法启动,通过引导盘恢复 一.备份还原系统命令 方法一: 备份:tar cvpzf backup.tgz --exclude=/ ...

  5. Oracle数据库导入csv文件(sqlldr命令行)

    1.说明 Oracle数据库导入csv文件, 当csv文件较小时, 可以使用数据库管理工具, 比如DBevaer导入到数据库, 当csv文件很大时, 可以使用Oracle提供的sqlldr命令行工具, ...

  6. SqlServer一张表数据导入另一张表,收藏使用,工作中更新数据错误很有用

    sql一张表数据导入另一张表   1.如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:   INSERT INTO 目标表 SELECT * FROM 来源表;   2.比如要将 arti ...

  7. Oracle创建用户以及备份还原数据库操作

    -- Create the user create user XX identified by "" default tablespace USERS temporary tabl ...

  8. Windows DHCP备份还原命令

    DHCP服务器如果要更换,最简单的方法就是命令导入导出   导出netsh dhcp server export e:\dhcp.txt all 导入netsh dhcp server import ...

  9. 驱动备份还原命令——驅動備份還原命令——Driver Backup/Restore

    以管理員身份啓動命令提示符,輸入以下命令: 1.驅動備份(备份Backup)命令: Dism /online /export-driver /destionation:D:\DriverBackup ...

  10. sqlserver数据库附加分离备份还原命令

    --获取所有数据库的名称 select [name] from master.dbo.sysdatabases where [name]='master' --判断数据库是否存在 if exists( ...

随机推荐

  1. canvas绘制--圆角多边形

    context.arcTo() arcTo() 方法在画布上创建介于两个切线之间的弧/曲线. JavaScript 语法: context.arcTo(x1,y1,x2,y2,r); 参数描述 参数 ...

  2. Git commit注释规范

    指定规范的提交格式, 方便后期版本的回滚与记录的查询 格式规范: <type>(<scope>): <subject> // 空一行 <body> 范例 ...

  3. 如何用Docker Compose部署项目?

    目录 前言 Docker Compose 1. Docker Compose是什么? 2. Docker Compose 的具体步骤 3. 如何在IDEA项目里面使用Docker Compose 启动 ...

  4. MySQL底层概述—9.ACID与事务

    大纲 1.ACID之原子性 2.ACID之持久性 3.ACID之隔离性 4.ACID之一致性 5.ACID的关系 6.事务控制演进之排队 7.事务控制演进之排它锁 8.事务控制演进之读写锁 9.事务控 ...

  5. PM-数据治理中,常用的术语解释

    1 指标 是表征和评价一项或多项经营活动业务绩效的指示.指标由指标名称和指标数值两部分组成,指标名称及其涵义体现指标在质和量方面的规定性,指标数值反映指标在具体对象在特定时间.空间.条件下的数量表现. ...

  6. 题解:P10704 救赎(Redemption)

    数论题,先看数据范围,发现 $n$ 和 $m$ 都非常大,但是 $\sum_{i=1}^{i=n}a_i \le 10^9$. 解以上不等式得不同的 $a_i$ 大约有 $40000$ 个.记有 $c ...

  7. Flutter & Xcode15-beta 冲突

    安装了Xcode15-beta后运行 Flutter 一直报有两个相同的文件冲突,这时候指定一下 Xcode-beta 的位置就好了 sudo xcode-select --switch /Appli ...

  8. HttpClientFacotry Part 4: 集成 Polly 处理瞬时失效

    HttpClientFacotry Part 4: 集成 Polly 处理瞬时失效 原文地址:https://www.stevejgordon.co.uk/httpclientfactory-usin ...

  9. mysql转换类型、类型转换、查询结果类型转换

    一.问题来源 数据库一张表的主键id设为了自增,那就是int型的,但是其他表的关联字段又设置成了字符串! 而且已经开发了很久才发现问题,既然出现了问题肯定需要解决 如图 很明显id是不一样的,花了点时 ...

  10. Spring Boot整合Thrift RPC

    [转载] https://coder4.com/homs_online/spring-boot/sb-thrift.html Spring Boot自动配置简介 在介绍RPC之前,我们先来学习下Spr ...