oracle11g数据导出和导入

利用数据泵导出导入数据

命令: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)测试结果

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长夜漫漫长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值