Export and Import这两个工具伴随oracle很长时间,随着现在数据量的逐渐增大这两个工具会慢慢不会被使用,但是imp与exp的灵活性很有学习的价值,所以需整理一下(图比较多已做过实验)。
一:exp(export)
1,导出的几种模式,第
1列,导出某个表 第2列,导出用户名下所有的东西,这两个用的比较多。最后一个数据量很大被rman所代替。
2,命令模板
owner=u1 用户模式导出就是把u1下所有的schema 表索引都导出来。
u1/u1@mahee 用户名/密码@sid
file=u1.dmp 导出文件名及路径直接导入目前所在的路径下,也可以改变路径比如file=d:u1.dmp
log=u1.log 输出日志路径
3,另一种方法写到文件里:
然后再调用
4,将整个数据库导出,grant=y把对应的权限导出,rows=y把数据也导出如果rows=n则只导出表结构。
5,User模式下导出:关键字owner=xxxx 如果是别的用户导出owner下的数据没有exp_full_database权限则不能导出
实验:
- grant exp_full_database to u1;
再次导出没有问题。
6,导出别的用户上的表操作,必须有权限。Grant=y 赋权导出,indexes=y索引导出
7,还可以使用通配符就是将用户下所有含P与S的表导出
8,导出自己的表直接括号括起来,compress=y 压缩 ,rows=y导数据也可以rows=n不导数据。
9,导入导出的两种模式:一是常规模式 二是直接模式(direct-path)速度能快些。
实验:
二:imp(import)
1,导一些小数据1-2G的数据用的上。导大的就不适合了。
2,命令模板
第一个列子把exp1.dmp数据里两个表employees与departments导入导hr用户里。
第二个例子从将hr用户里的数据导入到system用户名下的。
实验:
SQL> grant imp_full_database to u2;
再次导入成功。
阅读(1567) | 评论(0) | 转发(0) |