★Oracle imp/impdp 导入dmp文件到数据库

article/2025/10/2 15:10:53

使用EXPDP和IMPDP时应该注意的事项:


       EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。
       EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。

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

注意:EXP不会导出空表(可能会对存储过程有影响)

1.exp/imp导出/导入数据

--exp导出数据
exp CCENSE/CCENSE@OracleDB file=D:\DBBackUp\oracleExp.dmp log=D:\DBBackUp\oracleExp20161103.log
--imp导入数据
imp CCENSE/CCENSE@OracleDB file=D:\DBBackUp\oracleExp.dmp log=D:\DBBackUp\oracleImp20161103.log FULL=y;/* 说明:CCENSE/CCENSE@OracleDB --->用户名/密码@数据库实例file="本地路径+需要导入/导出的dmp文件全称"log="日志文件"FULL=y;
*/
--给当前用户追加connect,resource,dba [非必须] grant connect,resource,dba to CCENSE;
数据导出:
将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\daochu.dmp full=y
将数据库中system用户与sys用户的表导出exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
将数据库中的表table1 、table2导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2) 
将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。不过在上面命令后面 加上 compress=y  就可以了 
数据的导入
将D:\daochu.dmp 中的数据导入 TEST数据库中。imp system/manager@TEST  file=d:\daochu.dmp上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。在后面加上 ignore=y 就可以了。
将d:\daochu.dmp中的表table1 导入imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)

2.expdp/impdp导出/导入数据

       使用impdp命令,需要在oracle数据库服务器操作:

       使用sqlplus或者Oracle客户端(PL/SQL) 链接到相应的Oracle数据库实例(进行下面第一,第二两步骤的操作)

       一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。

create directory dpdata1 as 'd:\test\dump';(查看服务器上若没有存在d:\test\dump目录,则手动新建,把dmp备份文件放到d:\test\dump目录下面)

       二、查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)

select * from dba_directories;

这里写图片描述

3.导入数据库

--expdp导出数据
expdp CCENSE/CCENSE@OracleDB directory = "dpdata1" dumpfile ="oracleExpdp.dmp" logfile = oracleExpdp20161103.log
--impdp导入数据
impdp CCENSE/CCENSE@OracleDB directory="dpdata1" dumpfile="oracleExpdp.dmp" logfile = oracleImpdp20161103.log FULL=y;/* 说明:CCENSE/CCENSE@OracleDB --->用户名/密码@数据库实例directory="在步骤一中创建的逻辑目录"dumpfile="需要导入/导出的dmp文件全称"logfile="日志文件"FULL=y;
*/
--其他SQL
--表空间[10G]和临时表空间[1G]
/*表空间*/
SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size 
FROM dba_tablespaces t, dba_data_files d 
WHERE t.tablespace_name = d.tablespace_name 
GROUP BY t.tablespace_name;/*临时表空间*/
select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;-- 查看端口是否被占用
netstat -aon|findstr "1522"-- 查看监听状态,启动监听,关闭监听
lsnrctl status LISTENER2
lsnrctl start LISTENER2 
lsnrctl stop LISTENER2--访问地址
linux sqlplus ccense/ccense@//localhost:1521/OracleDB;
win sqlplus ccense/ccense@IP:1521/OracleDB;

       imp 只导入数据,不导入表结构,在命令里加上ignore=y就可以了

       ignore=y相当于,如果没有的表,创建并倒入数据,如果已经有的表,忽略创建的,但不忽略倒入。

       在使用IMP导入并使用ignore=y参数时,Oracle根本不检查要导入的数据结构和现存在数据库中表的结构是否相同

       exp 命令导出表结构,不导出表数据。只需在命令行里加一个参数rows=n即可。表示不导出表数据


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

相关文章

Oracle:使用Impdp导入dmp文件的详细过程

完全转载自:https://www.cnblogs.com/afei1013/p/13123784.html 这一天为了导入这个Oracle的dmp文件,简直就是血泪史,因本人对Oracle并不是很会,随意踩了很多小白会踩的坑,因此特意记录一下过程,防备下次的…

Oracle expdp/impdp工具使用

Oracle数据泵 一、数据泵的作用: 1.实现逻辑备份和逻辑恢复 2.在数据库用户之间移动对象 3.在数据库之间移动对象 4.实现表空间转移 二 、数据泵的特点与传统导出导入的区别 1.EXP和IMP是客户段工具程序, EXPDP和IMPDP是服务端的工具程序 2.EXP和IMP效率…

impdp导入dmp文件

impdp命令在cmd下直接用,不必登录oracle。只能导入expdp导出的dmp文件。 expdp导出的时候,需要创建 DIRECTORY 导出什么表空间,导入也要什么表空间。 导出什么用户,导入也要什么用户。 如果没有要新建。 从杭州服务器expdp导出…

解决:impdp导入.dmp文件

首先创建一个新用户,保证和导出dmp文件时的用户名,密码以及对应的表空间名相同。 不多说,直接上图 (基本只用改下面备注中文部分,根据需求对应替换就行) 1.创建用户 create user 用户 identified by 口…

配置NAT实现外网主机访问内网服务器(Cisco)

假设你是某公司的网络管理员,公司只向ISP申请了一个公网IP,现公司的网站在内网,要求在互联网也可以访问公司网站。 192.168.1.2是Web服务器的IP地址(内网地址)。通过分析可知,需要将内网服务器IP转换成外网…

内网服务器设置代理访问外网

内网服务器设置代理访问外网 背景 首先需要两台云服务器,其中服务器A无公网IP,服务器B有公网IP。 AB公网IP/110.40.255.180内网IP172.17.64.11172.17.64.17 配置A代理 直接配置环境变量即可。 cd /etc/profile.d/ vim proxy.sh进入proxy.sh文件后&…

外网访问内网的FTP服务器

1. 背景简介 最近研究如何在内网搭架FTP服务器,同时要保证外网(公网)能访问的到。终成正果,但走了一些弯路,在此记下,以飨后人。 2. 基础知识 FTP 使用 2 个端口,一个数据端口和一个命令端口…

如何让外网访问本地WEB服务器

目前很多网站开发者安装了IIS或者Apache等Web服务器,可以把自己电脑配置成一以路由为中心的内网服务器。 本地服务器在内网测试是绰绰有余的,但是有些项目需要演示给异地的客户验收,而又赶不及把自己的网站放到服务器上面,这时我们…

内网主机通过外网地址访问内网服务器

网关设备一般都具有NAT功能,分别为源地址NAT、目标地址NAT,这两种功能应用比较普遍,各厂商都有很标准的实现方式。但是对于“内网主机通过外网地址访问内网服务器”这一场景,各厂商的实现不通,下面就这个场景,分别说一下各厂商的实现。1.华为2.华三内网用户通过NAT地址访…

关于外网访问本地服务器

我在网上查到的外网访问本地服务器的方式有两种: 第一种是通过内网穿透的技术实现的。 第二种是通过申请域名,申请空间,申请云服务器,搭建网站实现的。 ①内网穿透的方式实现外网访问本地服务器 选择合适的内网穿透的工具 花…

【Linux-Windows】关于外网访问内网服务器

【Linux-Windows】关于外网访问内网服务器 1、背景2、内网穿透 1、背景 有时候,我们搭建的服务器系统是在内网,内网即内部局域网。 内网可以访问外网,但是外网不能访问内网,外网即互联网或者称为公网。 内网的设备往往组成模式如…

ssh外网访问内网服务器

现在有这样一个情况,实验室有自己的服务器(内网),并且有相关老师进行维护(公网),我们可以在内网用内网ip访问服务器,如果我们在家里只能通过公网进行登录。但是我在实验室有一个小服…

公网访问本地内网web服务器【内网穿透】

随着科技进步和时代发展,计算机及互联网已经深深融入我们的生活和工作,与之对应的,对计算机及网络的探索,让其为我们的生活增添色彩和乐趣,也成为很多人的业余爱好,而自行发布一个网站,就是这一…

搭建可通过外网访问的内网服务器

这是本人,第一次写博客,文采不好,技术也菜鸟,请不要见怪。 前一段时间裸辞了,于是开始广投简历。可是现实是非常的残酷,年底了面试的通知很少。想着是不是自己的简历上干货太少了,不如把自己之…

华为防火墙USG6000V---内网访问外网---外网访问内网服务器(NAT服务器)示例配置

目录 一、配置要求 二、配置步骤 1. ping通防火墙接口IP地址的条件 2. 内网ping通外网终端的条件 3. 内网ping通DMZ(内网服务器)的条件 三、命令解析 一、配置要求 内网可以ping通防火墙;内网可以访问外网;外网可以访问内网…

外网访问内网服务器配置方法

前提需要有固定IP 路由器必须得是通过固定IP上网,才能通过外网访问内网服务器 登录路由器 在地址栏输入192.168.1.1或192.168.0.1。初始密码为admin,若忘记密码请重置路由器。这里以TP-Link WR842N为例。 点击应用管理选择虚拟服务器 界面不一样的话&…

华为云内网服务器通过公网服务器访问外网

虽然真的太简单,但我还是踩坑了。尴尬,所以写了这个文档记录一下。 场景:一台没有外网的node服务器,通过另一台有外网的master服务器,来访问外网。(这里使用的是华为云) node192.168.0.99maste…

内网访问外网方案

目录 正文背景 方案介绍 双网卡方案简介: 私有地址转换技术方案简介: 参考博客: 正文背景 今天面试,面试要求提供一个内网访问外网的方案,对于服务器方面我不是很了解,所以现在正好也是一个有目的性的…

通过外网访问内网服务器

通过外网访问内网服务器 ———————————————— 版权声明:本文为CSDN博主「Chaos Code」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/jinzhichaoshuipin…

通过路由器端口映射实现外网IP访问内网服务器

1.确认路由器的公网IP是不是真的公网IP(特别重要,如果不是可以不用看后面的了) 通过www.ip138.com网站可以查询当前网络的公网IP,再进入路由器控制界面查看wan口IP和公网IP是否相同,如果不同,大概率是私网IP(服务商在…