Oracle导入导出数据

1、imp/exp导入导出
1.1、exp导出

exp sourceuser/sourcepwd@orcl buffer=64000 file=D:\DB.dmp owner=sourceuser

1.2、imp导入

--导入sql文件
sqlplus username/password@orcl @D:\DB.sql
--导入dmp文件
imp username/password@orcl buffer=64000 file=D:\DB.dmp fromuser=sourceuser touser=username ignore=y

2、impdp/expdp 导入导出
2.1、expdp 导出
①、创建逻辑目录,最好以system等管理员创建

--drop directory dmp_dir
create directory dmp_dir as 'D:\Users\Tony\Desktop\db';
select * from dba_directories;

②、导出

expdp TEST/TEST@orcl schemas=TEST DIRECTORY=dmp_dir DUMPFILE=TEST0812.dmp logfile=TEST0812DMP.log

2.2、impdp导入
①、将dmp文件放入select * from dba_directories查询出来DATA_PUMP_DIR对应的位置。

select * from dba_directories;

②、导入

impdp TEST/TEST@orcl file=TEST0812.dmp REMAP_SCHEMA=TEST:TEST2 logfile=TEST0812DMP.log full=y

注意:TEST2会自动建立,其权限和使用的表空间与TEST相同,但此时用TEST2无法登录,必须修改TEST2的密码
impdp/expdp 导入导出参考:
https://blog.csdn.net/qq_25034619/article/details/81382084
https://blog.csdn.net/weixin_43822280/article/details/123472262

3、创建表空间

create tablespace TS_DEMO_DAT
datafile 'D:\app\Tony\oradata\orcl\TS_DEMO_DAT.DBF'
size 100m autoextend on
next 100m maxsize 4G
logging online
extent management local
autoallocate blocksize 8K
segment space
management auto
flashback on;

4、创建临时表空间

create temporary tablespace TS_DEMO_TMP
tempfile 'D:\app\Tony\oradata\orcl\TS_DEMO_TMP.DBF'
size 100m autoextend on
next 100m maxsize 4G
extent management local;

5、创建用户并指定表空间

create user username identified by password  
default tablespace TS_DEMO_DAT  
temporary tablespace TS_DEMO_TMP;  

6、给用户授予权限

grant connect,resource,dba to username;

7、删除用户

drop user username cascade;

8、删除表空间及其关联的物理文件

drop tablespace TS_DEMO_DAT including contents and datafiles;
drop tablespace TS_DEMO_TMP including contents and datafiles;

环境说明:以上都是在Oracle11g环境执行的。
参考:
清理oracle数据库空间
http://t.zoukankan.com/eavn-p-4365170.html

### 使用 Oracle 数据泵进行数据的导入和导出 #### 工具概述 Oracle 数据泵(Data Pump)提供了两种主要工具用于数据库数据迁移:`expdp` 和 `impdp`。这些工具自 Oracle 10g 起被引入,旨在替代传统的 `exp` 和 `imp` 实用程序[^2]。 #### 准备工作 为了成功执行数据泵操作,需确保具备适当权限并设置必要的环境变量。通常情况下,用户应拥有 `DATAPUMP_EXP_FULL_DATABASE` 或者 `DATAPUMP_IMP_FULL_DATABASE` 权限来运行完整的数据库备份或恢复任务[^3]。 #### 导出过程详解 通过命令行调用 `expdp` 可启动导出进程。基本语法如下所示: ```bash expdp username/password DIRECTORY=dir_name DUMPFILE=dump_file.dmp LOGFILE=log_file.log [其他参数] ``` 这里的关键选项包括但不限于: - **DIRECTORY**: 定义存储转储文件的位置; - **DUMPFILE**: 指定要创建的目标转储文件名; - **LOGFILE**: 记录整个过程中产生的日志信息到指定位置; 对于大型表格特别是含有 LOB 列的情况,可以采用基于 ROWID 的分片策略以提高效率。 #### 导入流程说明 当准备就绪后,可以通过下面的方式发起导入请求: ```bash impdp username/password DIRECTORY=dir_name DUMPFILE=dump_file.dmp LOGFILE=log_file.log [其他参数] ``` 同样地,在此期间也可以附加额外配置项调整行为模式,比如控制并发度或是过滤特定对象等[^4]。 #### 参数化脚本实例 实际应用中往往倾向于编写参数文件简化重复性的输入动作。例如,针对 HR 表格空间的一次性转移作业可参照下述模板构建 `.par` 文件: ```plaintext USERNAME=<your_username> PASSWORD=<your_password> DIRECTORY=/path/to/directory/ DUMPFILE=hr_tablespace_%U.dmp TABLESPACES=HR FULL=N CONTENT=ALL PARALLEL=4 EXCLUDE=index,constraint ``` 随后仅需简单引用该配置即可触发相应处理逻辑: ```bash impdp parfile=/u01/app/oracle/expdp/impdp_hr_table.par ``` 以上即为利用 Oracle 数据泵完成高效、灵活的数据传输工作的核心要点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值