‘壹’ 关于ORACLE数据库数据泵的使用问题
exp hr/hr@ORCL owner=hr file=hr_db_20141017.dmp log=hr_db_20141017.log
imp hr/hr file=hr_db_20141017.dmp log=hr_db_20141017.log full=y
楼上的正解,你不需要导出一个库中所有帐户的数据,只需要导出某一个你需要的帐户即可。
‘贰’ oracle 数据泵和exp的区别
exp imp 在连接到数据库的电脑上都能执行,是很早就有的功能
数据泵是新功能,是exp imp的增强,语法,速度均有增强,是10g以后才有的功能,只能在数据库的电脑上执行,安全性更高。
不同情况用不同功能,简单使用,数量不大时,可用 exp imp
数据泵更好,更强大
(2)oracle数据库泵扩展阅读:
Oracle10g提出的数据泵技术,在以下几个方面优于exp/imp命令:
1、数据泵工具运行于服务器端,相比客户端的exp/imp其性能更好,并能实现exp/imp的全部功能。
2、通过使用exclude,include,content等参数,数据泵可以为数据及数据对象提供更细微级别的选择性。
3、通过设定数据库版本号,数据泵可以兼容老版本的数据库系统。
4、并行执行。
5、通过estimate_only参数,数据泵可以预估导出作业所需的磁盘空间。
6、支持分布式环境中通过数据库连接实现导入导出。
7、支持导入时重新映射功能(即将对象导入到新的目标数据文件、架构及表空间等)。
8、支持元数据压缩及数据采样。
‘叁’ oracle数据泵可以按什么方式导出
打开开始菜单中的运行
打开以后,在运行框中输入CMD,点击确定
运行以下命令:
sqlplus system/密码
2 创建数据导出目录expnc_dir为目录名,'E:\ncdatabak'为数据库实际目录,命令如下:
create directory expnc_dir as 'E:\ncdatabak';
为oracle用户授予访问数据目录的权限,命令如下:
Grant read,write on directory expnc_dir to dxzyjt;
执行数据泵出命令,注意一定要在Cmd下执行,不能登录sqlplus后执行。
expdp dxzyjt/dxzyjt@ncdata_192.168.1.224 directory=expnc_dir mpfile=ncdatabak.dmp schemas=dxzyjt logfile=ncdatabak.log;
备份界面如下:
‘肆’ oracle数据泵迁移数据的具体步骤是什么
就是执行命令而已expdp导出mp文件
1、上传到数据库服务器上面
2、oracle数据库中登陆要导入的用户,建立一个directory
3、将这个mp文件放在directory对应的文件夹
4、执行impdp命令,很多选项,需要根据实际要求自行添加
‘伍’ oracle数据库用数据泵怎么导入导出
打开开始菜单中的运行
打开以后,在运行框中输入CMD,点击确定
运行以下命令:
sqlplus system/密码
2 创建数据导出目录expnc_dir为目录名,'E:\ncdatabak'为数据库实际目录,命令如下:
create directory expnc_dir as 'E:\ncdatabak';
为oracle用户授予访问数据目录的权限,命令如下:
Grant read,write on directory expnc_dir to dxzyjt;
6
执行数据泵出命令,注意一定要在Cmd下执行,不能登录sqlplus后执行。
expdp dxzyjt/dxzyjt@ncdata_192.168.1.224 directory=expnc_dir mpfile=ncdatabak.dmp schemas=dxzyjt logfile=ncdatabak.log;
备份界面如下:
‘陆’ 如何对 Oracle 数据泵 进行 debug
一、在数据泵卡住的时候,有一个很好的方法来判断:
1. 在expdp的时候,我们要观察mp 文件的变化,只要mp 文件大小在变化,那就说明expdp是正常的。
2. 在impdp的时候,我们可以及时查看表空间的变化,只要我们的表空间在变化,说明我们的impdp是正常的。
如果在数据泵操作的时候,表空间和mp都没有变化,数据泵操作也停止在某一步不动。那么我们就只能对数据泵进行debug操作。
二.如何对数据泵进行debug看
trace 生成的文件可能很大,所以在进行trace之前,必须先检查mp文件的大小:max_mp_file_size。
[oracle@asm trace]$ orz param max_mp
Session altered.
NAME ISDEFAULT SESMO SYSMOD VALUE
---------------------- --------- -------------- ---------------
max_mp_file_size TRUE TRUE IMMEDIATE unlimited
如果不是unlimited,就进行修改:
ALTER SYSTEM SETmax_mp_file_size = unlimited SCOPE = both;
2.1 使用Data Pump的TRACE 参数
2.1.1 TRACE 说明
启动trace 功能只需要在expdp/impdp 命令后加上一个trace 参数,该参数由一个7位的16进制数据组成。
前三位指定Data Pump组件的代码,后四位一般是:0300。
任何已0开头的trace的值都会被忽略,trace值不区分大小写。
如:
TRACE = 04A0300 或者 TRACE=4a0300
trace值的一些注意事项:
(1) trace 值不要超过7位十六进制数字。
(2) 不要添加十六进制的0x符号。
(3) 不要将16进制转换成10进制。
(4) 会忽略最前面的0,即使长度不满足7位。
(5) 参数不区分大小写。
在使用trace 参数时,执行数据泵操作的用户需要具有DBA 角色或者EXP_FULL_DATABASE /IMP_FULL_DATABASE的角色,如果权限不足,就会报ORA-31631的错误。
ORA-31631: privileges are required
解决方法:给用户赋权。 如:
GRANT exp_full_database TO tianlesoftware;
操作完成之后,在收回权限即可:
revoke exp_full_database from tianlesoftware;
使用TRACE的示例:
expdp scott/tiger DIRECTORY=my_dir DUMPFILE=expdp_s.dmp LOGFILE=expdp_s.log TABLES=empTRACE=480300
‘柒’ 如何使用数据泵导入oracle数据库
假设将dmp放到/data目录下,
首先在数据库中创建directory目录
SQL>
create
directory
exp
as
'/data/'
在操作系统命令执行导入命令。
impdp
system/*****
schemas=scott
directory=exp
mpfile=scott.dmp
logfile=imp.log
建议在导入的时候,参照之前导出的命令
‘捌’ navicat怎么导出oracle数据泵如何使用Navicat进行oracle数据泵导出啊
打开Navicat
右击导出数据的oracle数据库,然后点击【打开连接】
点击【数据泵】,然后点击【数据泵导出】
在【常规】标签页,设置工作名、模式、内容、导出数据等
点击【sql预览】,预览sql语句
点击【运行】,【信息日志】标签页会显示数据泵导出过程
‘玖’ 如何查看oracle数据泵导入日志
第一步:导出数据
用数据泵导出原库的数据,这个不需要进行其他的操作,直接在导出的机器直接执行下面语句就可以了,语句如下:
Expdp work/work@lxgh DIRECTORY=DATA_PUMP_DIR DUMPFILE=test2.p logfile=test2.log EXCLUDE=\"TABLE:IN'USER_OP_ACC_FILE','DA_FILEMESSAGE')\"
注:红色字体根据实际情况自己填写,第一个红色字体为登录帐号、第二个红色的字体为导出包的名称,第三个红色字体为导出日志的名称,最后一串红色字体为导出时需要排除的表,如果需要全部导出,不需要排除表,就不要加后面的语句了。
导出的包目录,有二种方式可以找到,第一种方式最简单,导出完成后,最后会有导出包存放的目录,或查看日志也会有记录。第二种方式是通过语句查询,用PLsql登录后,执行下面的语句:
SELECT * FROM dba_directories; 结果中查找DATA_PUMP_DIR对应的地址,就是导出包存放的位置了。
第二步:在需要导入的数据库中建好相应的表空间,用户等,如果有就不需要执行此步骤。
第三步:导入数据
用数据泵导入数据,先将导出的数据包放在需导入库的 DATA_PUMP_DIR 对应的目录下,然后直接执行下面的语句就可以了:
Impdp work/work@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=xtdb.DUP full=y (这个是全部导入的语句)
Impdp work/work@orcl DIRECTORY=DATA_PUMP_DIR DUMPFILE=20110907.DUP tables=(wf_element_field,wf_element_field_cg) (只导入列出的二个表)
导入执行完后,也有相应的日志可以查看,导入是否成功。
简单的几步,就可以完成用数据泵导入、导出数据库操作。