oracle11g数据导出和导入

发布时间:2024年01月15日

利用数据泵导出导入数据

命令:EXPDP/IMPDP

第一:创建directory对象,可以在命令行,也可以在客户端上运行

CREATE DIRECTORY DUMP_DIR AS? '/home/dump'

原因:导入导出工具只能将转储文件存放在DIRECTORY对象对应的os目录中,所以必须建立directroy对象,并且需要授权(读写)

第二:授权

GRANT read,write on directory dump_dir to scott;

这里授权给用户scott读写权限

特别注意点:其中存储的os目录需要改成oracle用户和组,否则报错,如图

chown -R oracle:oinstall dumr.dir即可

测试,具体其他参数可以参考其他资料,个人总结记录学习过程中的易错点

导出语句:expdp scott/tiger directory=dump_dir dumpfile=tab.dmp tables=emp,dept

--解释:导出scott用户下的表emp,dept,存储文件在directory对应的目录下,文件名字为tab.dmp

导入语句:

impdp system/system?directory=dump_dir dumpfile=tab.dmp tables=scott.emp,scott.dept remap_schema=scott:system

--解释:将刚刚导出的表导入导system用户(模式)下,remap_schema参数导入其他模式需要使用

关于导出和导入

1.可以按模式导出,导入

expdp system/system?directory=dump_dir dumpfile=schema.dmp schemas=scott,hr

----------------------------------

impdp system/system?directory=dump_dir dumpfile=schema.dmp schemas=scott remap_schema=scott:system;

2.按表空间导出,导入

expdp system/system?directory=dump_dir dumpfile=tablespace.dmp? tablespaces=tbsp_1

------------------------------

impdp system/system?directory=dump_dir dumpfile=tablespace.dmp? tablespaces=tbsp_1

3.导出全部数据库

expdp system/system?directory=dump_dir dumpfile=fulldatabase.dmp? full=y;

-------------------------

impdp?system/system?directory=dump_dir dumpfile=fulldatabase.dmp? full=y;

可以发现导入和导出除了命令不通,其他基本相同,设计不通模式,需要用remap_schema参数来映射,其他测试用例还有很多,可以自行研究各个参数来测试。

RMAN备份恢复数据库的物理文件,注意下区别。

将其他格式数据导入导oracle中-sql*loader工具

命令:sqlldr

第一,自由格式

1)建表

---sql*Loader工具
CREATE table student--自由格式
(
?? ?stuno NUMBER(4),
?? ?stuname varchar2(20),
?? ?sex varchar2(4),
?? ?old number(4)
);

2)编写数据文件

3)编写控制文件

控制文件内容:

load data
?? ?infile '/home/dumr.dir/student.txt'
?? ?into table student(
?? ?stuno position(01:04) integer external,
?? ?stuname position(11:14) char,
?? ?sex position(21:22) char,
?? ?old position(29:30) integer external
)
?

4)执行

sqlldr system/system control=/home/dumr.dir/student.ctl log=/home/dumr.dir/stu_log;

5)测试结果

第二,固定格式(csv)

1)建表

2)编写数据文件

1005,east,nn
1006,west,nv

3)编写控制文件

load data
?? ?infile '/home/dumr.dir/person.csv'
?? ?append into table person
?? ?fields terminated by ','
?? ?(code,name,sex)

4)执行

sqlldr system/system control=/home/dumr.dir/person.ctl log=/home/dumr.dir/per.log

5)测试结果

文章来源:https://blog.csdn.net/wudongfang666/article/details/135601223
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。