Oracle Data Pump(数据泵)

2023-12-27 11:20
文章标签 oracle 数据 data pump

本文主要是介绍Oracle Data Pump(数据泵),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • Oracle Data Pump(数据泵):概述
      • Oracle Data Pump: 优点
      • exp/imp EXPDP/IMPDP的主要区别
      • 数据泵由三部分组成:
      • 导入导出前应检查确认的信息
      • ORACLE expdp 常用命令使用详解
      • IMPDP 常用命令介绍
      • 案例

Oracle Data Pump(数据泵):概述

作为用于高速数据和元数据移动的基于服务器的工具,Oracle Data Pump 具有:
可通过DBMS_DATAPUMP调用
提供以下工具:
expdp
impdp

Oracle Data Pump: 优点

Oracle Data Pump是Oracle数据库提供的一种数据导入导出工具,它可以快速地将数据从一个Oracle数据库实例复制到另一个实例。以下是Oracle Data Pump的一些主要优点:

高效性:通过多线程并行导出、压缩和导入数据,可以显著提高数据迁移的速度和效率。
灵活性:可以选择要导入或导出的数据和表,以满足不同的需求。同时支持对细粒度数据进行导入,提供了重映射等能力。
安全性:数据在传输和存储过程中进行了加密,以保证数据的安全性。
重启能力:如果在迁移过程中发生中断,Oracle Data Pump具有重新启动作业的能力,可以从上次中断的地方继续执行。
并行执行:支持并行处理,这可以进一步提高大数据量迁移的效率。
估算空间需求:该工具具有估算空间需求的能力,有助于提前规划和分配足够的资源。
网格方式操作:Oracle Data Pump支持网格计算,这使得它能够在分布式环境中更有效地利用资源。
关联运行作业:允许用户关联多个作业,以便按顺序或并行执行它们,从而提高了操作的便利性。

在这里插入图片描述

Oracle数据库导入导出的基本概念
exp/imp EXPDP/IMPDP的基本概念
EXPDP和IMPDP叫做数据泵(Oracle Data Pump),是ORACLE10G开始出现的导入导出工具,相对于数据泵EXP和IMP叫做传统导入导出工具(the original Export and Import utilities),一般来说,ORACLE建议使用数据泵,因为他支持ORACLE10G之后的所有新特性,而传统导入导出工具不支持。这两种类型的导入导出工具都支持跨操作系统平台和跨ORACLE版本。

exp/imp EXPDP/IMPDP的主要区别

1)EXPDP/IMPDP数据泵是服务端的工具,它只能在服务端使用而不能在客户端使用,也不能在DG库上使用
2)exp/imp可以在服务端和客户端使用,也可以在只读的DG库上使用

数据泵由三部分组成:

1、命令行客户端(expdp和impdp)
2、 DBMS_DATAPUMP包 (也就是Data Pump API)
3、 DBMS_METADATA包 (也就是Metadata API)
命令行客户端与传统的exp和imp非常相似,但它是通过使用DBMS_DATAPUMP包提供的过程执行导入导出命名。所有的数据泵执行过程都是在服务器端进行的,这意味着所有的非授权用户,需要让DBA创建一个DIRECTORY来读写数据泵文件。对于授权用户,有一个默认的DIRECTORY可以用。DBMS_DATAPUMP 和DBMS_METADATA包可以独立于expdp、impdp而独立使用,就像ORACLE的其他包一样。

导入导出前应检查确认的信息

1、字符集检查,检查源库、目标库的字符集字符集是否一致

select userenv('language') from dual;
AMERICAN_AMERICA.AL32UTF8
echo $NLS_LANG
AMERICAN_AMERICA.AL32UTF8

需要保证源库上的字符集和目标库上的字符集一样,否则expdp/impdp (exp/imp) 容易报告错误,并且丟数据。

另外,需要保证环境变量NLS_LANG和数据库字符集一样,如不一致,需在导入之前先设置字符集
如:如果数据库字符集是AL32UTF8
export nls_lang=AMERICAN_AMERICA.AL32UTF8,而且需要重新登录后生效,可以使用env|grep NLS检查确认

2、数据库版本检查,检查源库和目标库的数据库版本是否都是同一版本,不同版本需要考虑的情况不同。默认从低版本到高版本可以兼容,从高版本到低版本需要注意。

select * from v$version;

3、存储容量检查,主要检查目标库存储大小是否满足
asm
lsdg

Linux
df -h

4、表空间检查

select df.tablespace_name tbs,totalspace total_mb,decode(maxbytes,0,freespace,freespace + df.auto_totalspace - df.totalspace) free_mb,decode(maxbytes,0,round((1 - freespace / totalspace) * 100, 2),round((1 - (freespace + df.auto_totalspace - df.totalspace) /auto_totalspace) * 100,2)) used_ratefrom (select tablespace_name,round(sum(bytes) / 1024 / 1024) totalspace,round(sum(decode(AUTOEXTENSIBLE, 'YES', maxbytes, bytes)) / 1024 / 1024) auto_totalspace,max(maxbytes) maxbytesfrom dba_data_filesgroup by tablespace_name) df,(select tablespace_name, round(sum(bytes) / 1024 / 1024) freespacefrom dba_free_spacegroup by tablespace_name) fs
where df.tablespace_name = fs.tablespace_name
order by 4;

检查表空间对应的数据文件大小

select tablespace_name, file_name, bytes / 1024 / 1024from dba_data_files
where tablespace_name in ('USERS');

4、 用户检查
检查用户所对应表空间

select username, account_status, default_tablespacefrom dba_users
where username in ('APPS')
order by 2;```

检查所属owner

select distinct owner, segment_type, tablespace_namefrom dba_extents
where owner in ('APPS');

5、 数据检查
检查表的行数

select table_name, num_rowsfrom all_tables
where owner = 'FAXDBSERVER'
group by table_name, num_rows
having num_rows > 500
order by table_name;

检查对象的数量

Select owner, object_type, count(*)from dba_objects
where owner = 'APPS'
group by owner, object_type
order by owner, object_type;

6、 数据库大小检查

select sum(SumMB) / 1024,sum(usedMB) / 1024,sum(freeMB) / 1024,(sum(usedMB) / 1024 + sum(freeMB) / 1024)from (select a.tablespace_name,a.bytes / 1024 / 1024 SumMB,(a.bytes - b.bytes) / 1024 / 1024 usedMB,b.bytes / 1024 / 1024 freeMB,round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"from (select tablespace_name, sum(bytes) bytesfrom dba_data_filesgroup by tablespace_name) a,(select tablespace_name, sum(bytes) bytes, max(bytes) largestfrom dba_free_spacegroup by tablespace_name) bwhere a.tablespace_name = b.tablespace_name);

ORACLE expdp 常用命令使用详解

1.ATTACH=[schema_name.]job_name

Schema_name 用于指定方案名,job_name 用于指定导出作业名.注意,如果使用 ATTACH
选项,在命令行除了连接字符串和 ATTACH 选项外,不能指定任何其他选项,示例如下:
expdp hr/hr ATTACH=hr.export_job

  1. CONTENT

该选项用于指定要导出的内容.默认值为 ALL CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
当设置 CONTENT
为 ALL 时,将导出对象定义及其所有数据.
为 DATA_ONLY 时,只导出对象数据,
为 METADATA_ONLY 时,只导出对象定义
expdp hr/hr DIRECTORY=dump DUMPFILE=a.dump CONTENT=METADATA_ONLY

  1. DIRECTORY

指定转储文件和日志文件所在的目录 DIRECTORY=directory_object
Directory_object 用于指定目录对象名称.需要注意,目录对象是使用 CREATE DIRECTORY
语句建立的对象,而不是 OS 目录
sys用户下建立
mkdir -p /home/oracle/dump --必须在ORACLE用户下使用(操作系统)
create or replace directory dump as ‘/home/oracle/dump’;
普通用户给他相应的权限
grant read, write on directory dump to hr;
grant exp_full_database to hr;
检查目录

desc dba_directories;
set lines 1000
set pages 100
col owner for a5
col DIRECTORY_NAME for a25
col DIRECTORY_PATH for a80
select * from dba_directories;

其他用户需要有exp_full_database to hr权限;
expdp hr/hr DIRECTORY=dump DUMPFILE=hr.dump

  1. DUMPFILE

用于指定转储文件的名称,默认名称为 expdat.dmp DUMPFILE=[directory_object:]file_name [,….]
Directory_object 用于指定目录对象名,file_name 用于指定转储文件名.需要注意,如果不指
定 directory_object,导出工具会自动使用 DIRECTORY 选项指定的目录对象
expdp hr/hr DIRECTORY=dump1 DUMPFILE=dump2:a.dmp

  1. ESTIMATE

指定估算被导出表所占用磁盘空间分方法.默认值是 BLOCKS ESTIMATE={BLOCKS | STATISTICS}
设置为 BLOCKS 时,oracle 会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用
的空间,设置为 STATISTICS 时,根据最近统计值估算对象占用空间
expdp hr/hr TABLES=emp ESTIMATE=STATISTICS DIRECTORY=dump DUMPFILE=a.dump

  1. ESTIMATE_ONLY

指定是否只估算导出作业所占用的磁盘空间,默认值为 N EXTIMATE_ONLY={Y | N}
设置为 Y 时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为 N 时,不仅估算对
象所占用的磁盘空间,还会执行导出操作.
expdp hr/hr ESTIMATE_ONLY=y NOLOGFILE=y

  1. EXCLUDE

该选项用于指定执行操作时释放要排除对象类型或相关对象 EXCLUDE=object_type[:name_clause] [,….]
Object_type 用于指定要排除的对象类型,name_clause 用于指定要排除的具体对象
EXCLUDE 和 INCLUDE 不能同时使用
expdp hr/hr DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW

常用排除命令:
EXCLUDE=SEQUENCE,VIEW --过滤所有的SEQUENCE,VIEW
EXCLUDE=INDEX --过滤所有的INDEX
EXCLUDE=TABLE:“IN (‘EMP’,‘DEPT’)” --过滤表对象EMP,DEPT
EXCLUDE=SEQUENCE,VIEW,TABLE:“IN (‘EMP’,‘DEPT’)” --过滤所有的SEQUENCE,VIEW以及表对象EMP,DEPT
EXCLUDE=INDEX:“= ‘INDX_NAME’” --过滤指定的索引对象INDX_NAME
INCLUDE=PROCEDURE:“LIKE ‘PROC_U%’” --包含以PROC_U开头的所有存储过程(_ 符号代表任意单个字符)
INCLUDE=TABLE:"> ‘E’ " --包含大于字符E的所有表对象

  1. FILESIZE

指定导出文件的最大尺寸,默认为 0,(表示文件尺寸没有限制)

  1. 指定导出特定 SCN 时刻的表数据
    FLASHBACK_SCN=scn_value
    Scn_value 用于标识 SCN 值.FLASHBACK_SCN 和 FLASHBACK_TIME 不能同时使用
    expdp hr/hr DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_SCN=358523

  2. FLASHBACK_TIME

指定导出特定时间点的表数据 FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”
expdp hr/hr DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”

  1. FULL

指定数据库模式导出,默认为 N FULL={Y | N}
为 Y 时,标识执行数据库导出.

  1. HELP

指定是否显示 expdp 命令行选项的帮助信息,默认为 N
当设置为 Y 时,会显示导出选项的帮助信息. expdp help=y

  1. INCLUDE

指定导出时要包含的对象类型及相关对象
INCLUDE = object_type[:name_clause] [,… ] 在导数据过程中有如下参数比较好用: TABLE_DATA 表中的数据
TABLE 表的定义,就是 create table 的语句,include 后只写 table 参 数,将只创建表结构,exclude 后写 table 参数导入过程将不执行 create table 命令。
OBJECT_GRANT 对象赋权操作
INDEX 索引定义,情况跟 table 一致
CONSTRAINT 约束 INDEX_STATISTICS 索引统计信息 TABLE_STATISTICS 表的统计信息
在未使用 parfile 文件的情形下,所有的符号都需要进行转义,包括括号,双引号,单引号等

# expdp system/manager DIRECTORY=my_dir DUMPFILE=exp_tab.dmp
LOGFILE=exp_tab.log SCHEMAS=hr
INCLUDE=TABLE:\"IN \(\'EMPOLYEES\', \'DEPARTMENTS\'\)\"
  1. JOB_NAME

指定要导出作用的名称,默认为 SYS_XXX JOB_NAME=jobname_string
SELECT * FROM DBA_DATAPUMP_JOBS;–查看存在的 job

  1. LOGFILE

指定导出日志文件文件的名称,默认名称为 export.log LOGFILE=[directory_object:]file_name
Directory_object 用于指定目录对象名称,file_name 用于指定导出日志文件名.如果不指定
directory_object.导出作用会自动使用 DIRECTORY 的相应选项值.
expdp hr/hr DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log

  1. NETWORK_LINK

指定数据库连接名,如果要将远程数据库对象导出到本地实例的转储文件中,必须设置该选项.
如:expdp hr/hr directory=dir_dp NETWORK_LINK=igisdb tables=p_street_area dumpfile =p_street_area.dmp
logfile=p_street_area.log job_name=my_job igisdb 是目的数据库与源数据的链接名,
dir_dp 是目的数据库上的目录
而如果直接用使用连接字符串(@orcl),expdp 属于服务端工具,expdp 生成的文件默认是 存放在服务端的

  1. NOLOGFILE

该选项用于指定禁止生成导出日志文件,默认值为 N.

  1. PARALLEL

指定执行导出操作的并行进程个数,默认值为 1
注:并行度设置不应该超过 CPU 数的 2 倍,如果 cpu 为 2 个,可将 PARALLEL 设为 2,在导入时速度比 PARALLEL 为 1 要快
而对于导出的文件,如果 PARALLEL 设为 2,导出文件只有一个,导出速度提高不多,因为导出都是到同一个文件,会争抢资源。所以可以设置导出文件为两个,如下所示:
expdp hr/hr directory=d_test dumpfile=hrfile1.dmp,hrfile2.dp parallel=2

  1. PARFILE

指定导出参数文件的名称 PARFILE=[directory_path] file_name

  1. QUERY

用于指定过滤导出数据的 where 条件 QUERY=[schema.] [table_name:] query_clause
Schema 用于指定方案名,table_name 用于指定表名,query_clause 用于指定条件限制子句.
QUERY 选项不能与 CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES 等选项 同时使用.
expdp hr/hr directory=dump dumpfile=a.dmp Tables=emp query=’WHERE deptno=20’

  1. SCHEMAS

该方案用于指定执行方案模式导出,默认为当前用户方案.

  1. STATUS

指定显示导出作用进程的详细状态,默认值为 0

  1. TABLES

指定表模式导出 TABLES=[schema_name.]table_name[:partition_name][,…]
Schema_name 用于指定方案名,table_name 用于指定导出的表名,partition_name 用于指
定要导出的分区名.

  1. TABLESPACES

指定要导出表空间列表

  1. TRANSPORT_FULL_CHECK

该选项用于指定被迁移表空间和未迁移表空间关联关系的检查方式,默认为 N.
当设置为 Y 时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被迁移,将显示错误信息.当设置为 N 时,导出作用只检查单端依赖,
如果迁移索引所在表空间,但未迁移表所在表空间,将显示出错信息,如果迁移表所在表空间,未迁移索引所在表空间,则不会显示错误信息.

  1. TRANSPORT_TABLESPACES

指定执行表空间模式导出

  1. VERSION

指定被导出对象的数据库版本,默认值为 COMPATIBLE. VERSION={COMPATIBLE | LATEST | version_string}
为 COMPATIBLE 时,会根据初始化参数 COMPATIBLE 生成对象元数据;为 LATEST 时,会根据
数据库的实际版本生成对象元数据.version_string 用于指定数据库版本字符串.调用 expdp
导出的相关命令使用:
1)Ctrl+C 组合键:在执行过程中,可以按 Ctrl+C 组合键退出当前交互模式,退出之后, 导出操作不会停止
2)Export> status --查看当前 JOB 的状态及相关信息
3)Export> stop_job --暂停 JOB(暂停 job 后会退出 expor 模式)
4)重新进入 export 模式下:C:\Documents and Settings\Administrator>expdp lttfm/lttfm attach=lttfm.my_job1 --语句后面不带分号
5)Export> start_job --打开暂停的 JOB(并未开始重新执行)
6)Export> continue_client --通过此命令重新启动 “LTTFM”.“MY_JOB”:
7)Export> kill_job --取消当前的 JOB 并释放相关客户会话(将 job 删除同时 删除 dmp 文件)
8)Export> exit_client --通过此命令退出 export 模式(通过 4)可再进入
export 模式下)
注:导出完成后 job 自动卸载

数据泵导出的各种模式:
1)导出用户及其对象

expdp hr/hr schemas=hr dumpfile=expdp.dmp directory=dump logfile=expdp.log;

2)导出指定表

expdp hr/hr tables=employees,departments dumpfile=expdp.dmp directory=dump_dir logfile=expdp.log;

3)按查询条件导

expdp hr/hr directory=dump dumpfile=expdp.dmp tables=empquery='where deptno=20' logfile=expdp.log;

4)按表空间导

expdp system/oracle directory=dump dumpfile=tablespace.dmp tablespaces=temp,example logfile=expdp.log;

5)导整个数据库

expdp system/oracle directory=dump dumpfile=ly.dmp full=y  logfile=expdp.log;

IMPDP 常用命令介绍

IMPDP 命令行选项与 expdp 有很多相同的,不同的有:
1、REMAP_DATAFILE

该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间迁移表空间时可能需要该选项.
REMAP_DATAFIEL=source_datafie:target_datafile

2、REMAP_SCHEMA

该选项用于将源方案的所有对象装载到目标方案中. REMAP_SCHEMA=source_schema:target_schema

3、REMAP_TABLESPACE

将源表空间的所有对象导入到目标表空间中
REMAP_TABLESPACE=source_tablespace:target:tablespace

4、REUSE_DATAFILES

该选项指定建立表空间时是否覆盖已存在的数据文件.默认为 N REUSE_DATAFIELS={Y | N}

5、SKIP_UNUSABLE_INDEXES

指定导入是是否跳过不可使用的索引,默认为 N

6、SQLFILE

指定将导入要指定的索引 DDL 操作写入到 SQL 脚本中
SQLFILE=[directory_object:]file_name
Impdp hr/hr DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql

7、STREAMS_CONFIGURATION

指定是否导入流元数据(Stream Matadata),默认值为 Y.

8、TABLE_EXISTS_ACTION

该选项用于指定当表已经存在时导入作业要执行的操作,默认为 SKIP
TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
当设置该选项为 SKIP 时,导入作业会跳过已存在表处理下一个对象;当设置为 APPEND 时,会 追加数据,为 TRUNCATE 时,导入作业会截断表,然后为其追加新数据;当设置为 REPLACE 时, 导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE 选项不适用与簇表和 NETWORK_LINK 选项

9、TRANSFORM

该选项用于指定是否修改建立对象的 DDL 语句
TRANSFORM=transform_name:value[:object_type]
Transform_name 用于指定转换名,其中 SEGMENT_ATTRIBUTES 用于标识段属性(物理属 性,存储属性,表空间,日志等信息),STORAGE 用于标识段存储属性,VALUE 用于指定是否包含 段属性或段存储属性,object_type 用于指定对象类型.
Impdp hr/hr directory=dump dumpfile=tab.dmp Transform=segment_attributes:n:table

10、TRANSPORT_DATAFILES

该选项用于指定迁移空间时要被导入到目标数据库的数据文件
TRANSPORT_DATAFILE=datafile_name
Datafile_name 用于指定被复制到目标数据库的数据文件
Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp TRANSPORT_DATAFILES=’/user01/data/tbs1.f’调用 IMPDP

impdp 导入模式:

1、按表导入

p_street_area.dmp 文件中的表,此文件是以 hr 用户按 schemas=hr 导出的:

impdp hr/hr dumpfile=p_street_area.dmp logfile=imp_p_street_area.log directory=dir_dp tables=p_street_area

2、按用户导入(可以将用户信息直接导入,即如果用户信息不存在的情况下也可以直接导入)
impdp hr/hr schemas=hr dumpfile=expdp_test.dmp logfile=expdp_test.log directory=dump

3、不通过 expdp 的步骤生成 dmp 文件而直接导入的方法:

–从源数据库中向目标数据库导入表 p_street_area
impdp hr/hr directory=dump NETWORK_LINK=igisdb tables=p_street_area logfile=p_street_area.log
igisdb 是目的数据库与源数据的链接名,dir_dp 是目的数据库上的目录

4、更换表空间

采用 remap_tablespace 参数

–导出 hr 用户下的所有数据
expdp system/oracle directory=dump dumpfile=hr.dmp SCHEMAS=hr
注:如果是用 sys 用户导出的用户数据,包括用户创建、授权部分,用自身用户导出则不含这 些内容

–以下是将 hr 用户下的数据全部导入到表空间 gcomm(原来为 gmapdata 表空间下)下
impdp system/oracle directory=dump dumpfile=hr.dmp remap_tablespace=gmapdata:gcomm

简化用法
1)导入用户(从用户hr导入到用户hr)
impdp hr/hr directory=dump dumpfile=expdp.dmp schemas=hr logfile=impdp.log;
导入用户(从hr导入到用户hr1)
impdp hr/hr directory=dump dumpfile=expdp.dmp remap_schema=hr:hr1 logfile=impdp.log;

2)导入表(从hr用户中把表dept和emp导入到system用户中)
impdp system/oracle directory=dump dumpfile=expdp.dmp tables=hr.dept,hr.emp remap_schema=hr:system logfile=impdp.log table_exists_action=replace (表空间已存在则替换);

3)导入表空间
impdp system/oracle directory=dump dumpfile=tablespace.dmp tablespaces=example logfile=impdp.log;

4)导入整个数据库
impdb system/oracle directory=dump dumpfile=full.dmp full=y logfile=impdp.log;

案例

案例1
使用sys用户导出hr用户及其对象

1.创建目录
创建OS目录
mkdir -p /home/oracle/dump --必须在ORACLE用户下使用(操作系统)

2.创建转储文件和日志文件所在的目录
指定转储文件和日志文件所在的目录 DIRECTORY=directory_object
Directory_object 用于指定目录对象名称.需要注意,目录对象是使用 CREATE DIRECTORY

create or replace directory dump as ‘/home/oracle/dump’;
在这里插入图片描述
3.给目录授权
Grant read,write on directory dump to public;
在这里插入图片描述

4.检查目录是否创建成功

SET lines 160 pages 50000
COL directory_name FORMAT a40
COL directory_path FORMAT a80
COL grantee FORMAT a20
COL privilege FORMAT a10
SELECT directory_name, directory_path, grantee, privilegeFROM user_tab_privs t, all_directories d   
WHERE t.table_name(+)=d.directory_name   
ORDER BY 1,2,3;

在这里插入图片描述

5.导出数据
进入存储目录执行,方便查看日志
建议后台执行导出,避免数据量过大,异常终止。
nohup expdp ‘/ as sysdba’ schemas=hr dumpfile=expdphr.dmp directory=dump logfile=expdphr.log &

查看导出日志
可以查看nohup日志也可以查看expdphr.log日志
在这里插入图片描述
查看nohup日志,导出成功。
在这里插入图片描述

使用hr用户导出hr对象的所有资源
注意:由于上面存储目录和操作系统目录已经创建,直接使用即可
1.给hr用户导出数据库权限
grant exp_full_database to hr;

执行导出命令,后台导出
nohup expdp hr/hr schemas=hr dumpfile=expdphr01.dmp directory=dump logfile=expdphr01.log &

在操作系统目录/home/oracle/dump 可以看到新增的两个文件expdphr01.dmp expdphr01.log
在这里插入图片描述
查看导出日志expdphr01.log,导出成功
在这里插入图片描述

使用sys用户 导出hr指定表
查看hr用户下的表
SELECT table_name FROM all_tables WHERE owner = ‘HR’;
选择导出JOBS表
在这里插入图片描述
由于存储目录和权限不用重新授权,可直接执行导出命令
nohup expdp ‘/ as sysdba’ tables=hr.JOBS dumpfile=JOBS.dmp directory=dump logfile=JOBS.log &

查看日志,导出成功。
在这里插入图片描述

dmp文件和日志也对应的生成了
在这里插入图片描述

导入表
将上面导出的表(从hr用户中把表JOBS导入到system用户中)
nohup impdp ‘/ as sysdba’ directory=dump dumpfile=JOBS.dmp tables=hr.JOBS remap_schema=hr:system logfile=impdpJOBS.log &;

在这里插入图片描述
验证system下是否有JOBS表
在这里插入图片描述

这篇关于Oracle Data Pump(数据泵)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/542968

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

pandas数据过滤

Pandas 数据过滤方法 Pandas 提供了多种方法来过滤数据,可以根据不同的条件进行筛选。以下是一些常见的 Pandas 数据过滤方法,结合实例进行讲解,希望能帮你快速理解。 1. 基于条件筛选行 可以使用布尔索引来根据条件过滤行。 import pandas as pd# 创建示例数据data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dav

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者