ORACLE之数据泵导出

article/2025/10/20 2:07:47

ORACLE之数据泵导出

  • 导出数据泵(expdp):执行导出时,expdp先创建MT表,并将对象的信息插入MT表,开始执行实际的导出任务,当所有的对象都导出以后,将MT表也一起导出到转储文件中,等到导出任务完成或通过命令删除导出任务以后,将MT表也一并删除,如果是任务异常的终止,则MT表会保留。
  • 导入数据泵(impdp):执行导入时,impdp先将MT表从转储文件读出,并写入到目标数据库中,然后读取MT表中所有的对象信息,根据读取出来的对象名称,将这些对象从转储文件中提取出来,并插入到目标数据库中。
  • 基本操作:

    //查看导出数据泵与导入数据泵参数
    $expdp help=y
    $impdp help=y

导出前提设置:

//创建临时目录
SQL> create directory linshi_dir as '/u01/app/oracle/expdp';Directory created.//授权给所有用户都可以读写
SQL> grant read, write on directory temp_dir to public;Grant succeeded.//查看当前临时目录情况
SQL> select * from all_directories;

在这里插入图片描述

各种导出方式:

  1. 导出全库:

    expdp system/oracle directory=temp_dir full=y dumpfile=expdp_full%U.dmp logfile=expdp_full.log parallel=3 job_name=expdp_full_job
    //采用了4个并行进程导出全库

  2. 导出某个或某几个用户:

    expdp system/oracle directory=temp_dir dumpfile=expdp_schemas_%U.dmp schemas=scott, hr job_name=expdp_schemas_job

  3. 导出某个指定的表:

    expdp hr/hr directory=temp_dir dumpfile=expdp_tables_%U.dmp tables=emp, dept job_name=expdp_tables_job job_name=expdp_tables_job

  • %U表示:生成的文件名扩展为双字符,固定宽度,从01开始的单调递增的整数。
  • parallel = 2:指定并行度为2,%U最终生成两个文件,文件数和并行度一致。
  1. 按查询条件导(只能使用参数文件方式)

    expdp parfile=’/u01/app/oracle/expdp/expdp_query.par’

    cat> /u01/app/oracle/expdp/expdp_query.par <<!
    userid=hr/hr
    directory=temp_dir
    dumpfile=expdp_query.dmp
    tables=emp, dept
    query=emp:“where to_char(hire_date, ‘yyyy’)=‘2006’”, dept:“where department_id=50”
    !

  • 评估数据量:

expdp system/oracle directory=temp_dir schemas=hr estimate_only=y

  • 查看当前作业

    select owner_name, job_name, operation, job_mode, state from dba_datapump_jobs;
    在这里插入图片描述

导出重要参数

ESTIMATE_ONLY 导出数据量评估,不真正导出。
VERSION 导出版本,用于跨版本数据迁移时使用,
其值可以为COMPATIBLE,或具体版本号,如11.2.0、11.2、10.2.1、10.2等等。
从11g的数据导入到10g中,expdp语句要加10g的版本号: version=10 或 用10g客户端的plsql导表工具
COMPRESSION 开启压缩,其值有:ALL, DATA_ONLY, [METADATA_ONLY] and NONE
EXCLUDE 不导出符合条件的对象,该参数只能在参数文件中使用。
exclude=table:" =‘T1’ "
exclude=table:" like ‘EMPLOYEES%’ "
exclude=table:" in (‘EMPLOYEES’,‘DEPARTMENTS’)"
exclude=schema:"=‘HR’"
INCLUDE 导出符合条件的对象

导入重要参数

CONTENT 指定要加载的内容,其值为:[ALL],DATA_ONLY,METADATA_ONLY.
[ALL] 表示默认为ALL。
TABLE_EXISTS_ACTION
当表存在时,impdp导入的方式:
APPEND 追加
REPLACE 删除表后新建
TRUNCATE 清空表后插入数据
REMAP_TABLESPACE 修改对象所在的表空间,其值为:tbs1:tbs2,tbs3:tbs4 …
REMAP_SCHEMA 修改对象所属的用户,其值为:user1:user2,user3:user4 …
REMAP_TABLE 修改对象名称
QUERY 按查询条件导入,QUERY=employees:“WHERE department_id > 10”


http://chatgpt.dhexx.cn/article/lgo6l8vd.shtml

相关文章

ORACLE 导出数据csv文件,数字显示科学计数法

场景 ORACLE 查询数据&#xff0c;使用PLSQL导出csv数据&#xff0c;发现导出的数据字段,如果长度超过了12或者15&#xff0c;用excel打开&#xff0c;会自动显示成科学计数法&#xff0c;如下 解决方案 把oracle查询出来字段显示成 "字段"&#xff0c;发现这样导出的…

从Oracle导出数据到TXT文件从TXT文件导入数据到Oracle

如果是txt文件的数据导入oracle中&#xff0c;数据量大的话用pl/sql会卡死&#xff0c;那么就要用到sqlload命令。 前两天在做一个不算任务的任务&#xff0c;用shell脚本将数据库中的数据导出到文件&#xff0c;在万能的百度上找了一些资料&#xff0c;自己亲手实践了一番&am…

oracle导出到hive,从Oracle导出数据并导入到Hive

1、配置源和目标的数据连接 源(oracle)&#xff1a; 目标(Hive 2.1.1)&#xff0c;需要事先将hive的驱动程序导入HHDI的lib目录中。 Hive2.1.1需要的jar包如下&#xff1a;可根据自身情况更换hadoop和hive的jar包。 hadoop-common-2.6.0.jar hive-common-2.1.0.jar hive-jdbc-2…

Oracle导出数据字典

由于项目是不断迭代更新&#xff0c;数据库表也是根据需求不断更改&#xff0c;导致现在数据库50多张表数据字典都没有整理&#xff0c;现在领导突然需要数据字典&#xff0c;一时很难弄出来&#xff0c;于是就想通过一个快捷的办法生成数据字典&#xff0c;具体的步骤如下&…

Oracle数据表导入导出_数据迁移用

0.背景&#xff1a;突然接到居家办公的通知&#xff0c;工作用数据全部在内网&#xff0c;需要全部拷出带走&#xff0c;最大的单个表3.7G左右。根据往常经验将Oracle库中表导出为xlsx&#xff08;方便与同事沟通使用&#xff09;&#xff0c;发现效率太低&#xff0c;且受制于…

php设置中国时区方法

当我们输出&#xff1a;echo date(Y-m-d H:i:s,strtotime(now)); 发现输出的时间和当前系统的时间不一致的时候&#xff0c;我们需要改php.ini配置文件&#xff0c;使得输出的时间和当前系统时间一致 方法一&#xff1a;php.ini配置文件中设置中国时区&#xff0c;代码如下 da…

nginx php 设置时区,laravel5.8(二十)解决时区设置差8个小时解决办法

在使用laravel日志的时候&#xff0c;发现了一个问题&#xff0c;laravel日志记录的时候&#xff0c;总是要比我当前的时间差8个小时。 在服务器端输出格式化时间&#xff0c;也是当前的时间&#xff0c;这个就有点奇怪。百度了一下。 原来从php5.1.0开始&#xff0c;php.ini里…

php配置设置时区,php如何设置时区

php设置时区的方法&#xff1a;可以使用函数ini_set(date.timezone,Asia/Shanghai)来设置时区。还可以使用函数date_default_timezone_set(‘Asia/Shanghai)来设置。 在程序PHP 5以上版本的程序代码中使用函数date_default_timezone_set(‘Asia/Shanghai);来设置时区&#xff0…

php中的时间函数(如何设置时区有4种方法)------与时间相关的函数 (time、date、m‘ktime、microtime(true)、strtotime)

1.如何设置时区:服务器默认的时间都是国家统一时间格林威治&#xff0c;所以在使用服务器前需要设置当前服务器的时区位于用于指定的时区。 设置时区&#xff1a; 1、找到php.ini文件&#xff0c;找到date.zonetime。 &#xff08;1&#xff09;date.zonetime 大洲/城市 …

php:php时区的三种设置方式

格林威治标准时间和我们的时间&#xff08;北京时间&#xff09;差了正好8个小时。如果不设置时区&#xff0c;php时间默认使用格林威治标准时间。 方法一(推荐) 在php.ini里加上找到date.timezone项&#xff0c;设置date.timezone “Asia/Shanghai”&#xff0c;重启环境就…

Telnet的简单使用

当我们在cmd客户端输入telnet ip的时候&#xff0c;会提示telnet 不是内部或外部命令的错误&#xff0c;这是因为我们的Windows系统的Telnet客户端程序没有开启。例如&#xff1a; 1. 开启Windows系统的Telnet客户端 1&#xff09; 打开控制面板&#xff0c;点击程序功能&…

Ubuntu18.04系统如何安装和使用telnet工具

在ubuntu18.04中如何安装和使用telnet工具呢?本文给出详细说明。 1.更新软件列表 sudo apt update 2.安装telnet服务 sudo apt install openbsd-inetd telnetd 3.查看telnet运行状态 netstat -a | grep telnet 4.登录测试 telnet 127.0.0.1

【Windows篇】Telnet指令介绍以及telnet测试端口连接示例

演示环境 1.VMware Workstation16虚拟机 2.windows10企业版镜像 前言 Telnet是Internet远程登录服务的标准协议和主要方式&#xff0c;最初由ARPANET开发&#xff0c;现在主要用于Internet会话&#xff0c;它的基本功能是允许用户登录进入远程主机系统。telnet程序是基于TELN…

Telnet协议抓包-工具Wireshark

虚拟机与物理机都进行的操作&#xff0c;打开控制面板 --> 点开程序 --> 点开“打开或关闭Windows功能”&#xff0c;在虚拟机设置telnet服务端&#xff0c;在物理机设置telnet客户端。 在虚拟机进行如下操作&#xff1a;WindowsR --> 输入services --> 进入到服务…

Telnet介绍及其安装

Telnet是一种协议&#xff0c;其是TCP/IP协议族中的一员&#xff0c;是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。 Windows 系统自带了基于Telnet协议的程序&#xff0c;包括服务端程序和客户端程序&#xff0c; 所以习…

win10环境下的telnet工具使用(客户端和服务端)

开启服务 默认情况下win10里telnet工具是不开启的 如何开启telnet工具&#xff0c;网上有诸多教程&#xff0c;但是win10环境下的telnet工具是被阉割过的&#xff0c;只有客户端程序&#xff0c;即能在本机通过telnet访问其他主机&#xff0c;但是没有服务端程序&#xff0c;即…

【高效开发工具系列】Windows 怎么使用 telnet

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

推荐一款好用的telnet工具

常用telnet的人可能都知道secureCRT这款工具&#xff0c;支持多标签&#xff0c;密码保存等功能&#xff1b;可是它是共享软件&#xff1b;于是很多人就用putty来代替它&#xff1b; putty小巧好用&#xff0c;不过和secureCRT相比不支持密码记忆和多标签功能。今天我向大家推…

批量ping及telnet工具

批量ping及telnet工具 批量ping及telnet工具说明界面使用方法工具下载链接 批量ping及telnet工具说明 这款工具针对一个网段批量ping测试和对同一网段内指定端口的telnet测试。适合用于测试一个网段的机器有没有开放特定端口&#xff0c;防火墙策略检测&#xff0c;或是否打开…

电脑telnet工具如何开启

打开电脑Telnet 打开电脑----开始---控制面板----程序和功能----打开或关闭WINDOWS功能----TELNET 客户端勾选&#xff0c;并点击确定。 Telnet工具的使用 点击开始----运行----输入CMD&#xff08;打开命令窗口&#xff09;&#xff0c;直接输入telnet IP&#xff08;设备I…