最近在做oracle的数据备份任务,查了一下,有冷备份、热备份,综合考虑了一下,觉得exp/imp和expdp/impdp比较适合,一个是数据量也不算太大(估计最多也就上百万条),二实时要求低。
exp/imp和expdp/impdp原理不一样,exp/imp导出导入是通过sql语句导出插入,效率慢;
而expdp/impdp是oracle10g以后新增的特性,采用自带的API接口,大大提高效率(约2-5倍)。
一、
exp/imp实例:
exp username/pwd@orcl file=/home/test_ora_backup.dmp log=/home/test_ora_backup.log owner=username
imp username/pwd@orcl file=/home/test_ora_backup.dmp fromuser=username touser=username ignore=y
ignore=y:表示如果当前表存在就不创建表结构直接导入数据
二、
expdp/impdp实例:
1.back.sh
sqlplus SYSTEM/ORACLE @./back.sql
BACK_DIR=`(sqlplus -s 'username/pwd@orcl'<<EOF
set heading off
SELECT directory_path FROM dba_directories where directory_name='BACKUP_PCMP';
EOF
)`
if [ -f ${BACK_DIR}/test_ora_backup.dmp ] ; then
rm -rf ${BACK_DIR}/test_ora_backup.dmp
fi
expdp username/pwd@orcl dumpfile=test_ora_backup.dmp directory=BACKUP_PCMP
echo "Backup database data finished."
2.back.sql
--Oracle introduced a default directory from 10g R2, called DATA_PUMP_DIR
BEGIN execute immediate 'DROP DIRECTORY BACKUP_PCMP';
EXCEPTION WHEN OTHERS THEN NULL;
END;
/
CREATE DIRECTORY BACKUP_PCMP AS '/home/oracle/back';
GRANT read, write ON DIRECTORY BACKUP_PCMP TO PCRFBEIJING;
commit;
exit;
3.restore.sh
impdp username/pwd dumpfile=test_ora_backup.dmp directory=BACKUP_PCMP table_exists_action=APPEND
但是实际impdp操作的时候,去报错:
ORA-31693: Table data object "username"."AREA" failed to load/unload and is being skipped due to error:
ORA-00001: unique constraint (username.PK_AREA) violated
到官网查了一下,是oracle的hug(4383811),在 10.2.0.3才解决。本系统为10.2.0.1。
具体exp/imp,expdp/impdp参数选项可输入
expdp -help
参看.
也有很多网友收集了可查看:
exp/imp
http://dbajun.iteye.com/blog/215706
expdp/impdp
http://hi.baidu.com/edeed/blog/item/9799a3ccc4a29f1401e928a0.html
http://space.itpub.net/35489/viewspace-614126
分享到:
相关推荐
在 Oracle 10g 及其以上版本中,expdp 和 impdp 命令取代了传统的 exp 和 imp 命令,提供了更多的功能和选项。expdp 命令可以将数据导出到文件中,impdp 命令可以将数据从文件中导入到数据库中。 使用 imp/exp 命令...
impdp 和 expdp 命令是 Oracle 数据库备份的两个主要工具,它们都是基于服务器的数据导出导入工具,提供了一种高效、可靠的数据传输方式。impdp 和 expdp 命令可以实现 Oracle 数据库之间的数据传输,例如从 Oracle ...
"exp/imp2导入导出"即是指使用Oracle的expdp和impdp工具进行的数据导入导出操作。这些工具提供了比传统exp和imp更加强大、灵活且高效的性能,支持全库、表空间、表等多种级别的数据迁移。 ### expdp与impdp的基本...
- **EXPDP/IMPDP (Oracle 10g及以后版本)**: 这是Oracle 10g引入的新工具,相比EXP/IMP提供了更多的功能和更高的性能,特别是在处理大量数据时更为高效。 - **导出命令示例**: - 导出整个数据库: ```sql EXPDP ...
它提供了比传统EXP/IMP更快的导出和导入性能,同时支持并行处理和压缩选项,使得数据操作更加高效。本篇文章将详细讲解如何使用DMP文件进行数据的导出与导入。 ### 一、导出(expdp) 1. **命令格式**: ``` expdp...
Oracle Instant Client通常不包含`exp`和`imp`,但可以使用`expdp`和`impdp`作为Data Pump的替代。这两个命令的工作方式类似,只是使用了新的语法和选项。例如,`expdp`用于导出数据,而`impdp`用于导入数据。 5. ...
逻辑备份则是通过Oracle的数据泵工具(exp/imp或expdp/impdp)来完成的。exp和imp用于早期版本的Oracle,它们可以导出和导入表、索引、用户、权限等对象,实现逻辑层面的数据备份与恢复。而expdp和impdp是新版本...
- Exp 和 Imp 工具在 10g 之前使用广泛,但自 10g 开始,Oracle 同时保留了这些工具,并引入了数据泵工具 Expdp 和 Impdp。 - **工具使用限制**: - Exp 和 Imp 可以在客户端和服务端使用。 - Expdp 和 Impdp 仅...
Oracle数据库是世界上最广泛使用的数据库系统之一,特别是在大型企业级应用中。...无论是传统的exp/imp还是增强的expdp/impdp,它们都是数据库管理员的重要工具,为日常维护和数据管理提供了强大支持。
除了传统的exp/imp,Oracle 10g及以后版本引入了Data Pump(expdp/impdp),这是一个更快、更高效的导入导出工具,支持并行处理和更多的高级特性,如元数据过滤、表空间映射等。 总结来说,数据库的导入导出是...
总结,Oracle数据的导入导出是数据库管理的关键环节,通过exp和imp或更先进的expdp和impdp工具,我们可以高效地迁移、备份和恢复数据。正确理解和使用这些工具,将有助于我们更好地管理和维护Oracle数据库。在实际...
- **逻辑备份**:使用Oracle的Export工具,将数据库中的数据导出为二进制文件,如exp/imp和expdp/impdp。逻辑备份与数据库物理结构无关,但恢复时可能需要数据库处于特定状态。 - **物理备份**:分为脱机备份...
13. 数据迁移:最后,如果需要将数据迁移到新的Oracle实例,可以使用逻辑导出导入工具(如exp/imp或expdp/impdp),或者通过ETL(提取、转换、加载)工具来完成。 总结起来,重装系统不装Oracle可以通过备份和恢复...
- **数据泵导入导出**:`expdp/impdp` 是更高效、更灵活的数据备份和恢复工具,支持更多的高级功能。 - **逻辑备份特点**:逻辑备份是在逻辑层面上对数据对象进行快照,不能用于介质故障的恢复。 - **物理备份与...
Oracle提供了多种工具和技术来实现这一功能,包括传统的`exp`/`imp`工具以及更先进的`expdp`/`impdp`工具。 ##### 1. 使用exp/imp工具 - **导入**:使用`imp`命令将数据导入到数据库中。示例命令如下: ```bash ...
Oracle提供了一种名为`expdp`(Export Data Pump)和`impdp`(Import Data Pump)的高效数据导入导出工具,它们是Oracle Data Pump的一部分,用于快速转移大量数据。相较于早期的`exp`和`imp`,Data Pump在性能和...
2. 通过数据泵,以前通过 EXP/IMP 主要基于 Client/Server 的逻辑备份方式转换为服务器端的快速备份,数据泵主要工作在服务器端,可以通过并行方式快速装入或卸载数据,而且可以在运行过程中调整并行的程度,以加快...
Oracle提供了两种主要的数据导入导出工具:`expdp` 和 `impdp`(用于数据泵导入导出),以及 `exp` 和 `imp`(较旧的命令行工具)。其中,`expdp` 和 `impdp` 是基于数据泵的,它们利用了Oracle的数据泵API,提供了...