Oracle导出导入指定表

网友投稿 265 2022-11-04


Oracle导出导入指定表

以下这些方法只限于oracle 11g(不含)之前的oracle版本。如果是更高版本,可以参考拙作:​​​expdp与impdp导出导入指定表​​

从源数据库导出:

exp user1/pwd@server1 file=c:\temp\exp.dmp tables=(table1, table2)

导入到目标数据库:

imp user2/pwd@server2 file=c:\temp\exp.dmp tables=(table1, table2)

Oracle就是有这个好处,可以直接将远程的数据导出到本地;或者将本地的数据文件导入到远程数据库。而SQL SERVER的备份、还原文件,一定是放在远程服务器本机的。

补充一下,如果有许多表,那么以上语句可能会换行。但以上命令是在DOS命令窗口执行的,命令行方式,容不得换行。那咋办呢?我的笨办法是将语句拷贝到WORD文档,然后将回车换行符替换掉。替换的方法:在替换窗口,查找内容输入 ^p(注意是小写),替换内容为空,然后替换即可。

=====================================

以 sysdba 身份运行,导出导入指定用户所属表:

exp ‘sys/123456@Service1 as sysdba’ file=c:\temp\exp.dmp table s=(sde.ISLAND)

imp 'sys/888888@Service2 ’ file=c:\temp\exp.dmp fromuser =sde tables=(ISLAND)

================================================= 如果表空间的名字不一样,会报 ORA-00959 错误,咋办?

1、先从源数据库,导出建表脚本(DDL)

2、在新库新表空间里运行这些DDL

3、imp,加上fromuser,touser,ignore=Y选项

imp 'sys/lt@HPM as sysdba' file=c:\temp\base.dmp fromuser=hydg touser=hpm tables=(org_user,SYS_ONLINE,sys_userRoles,Org_Role,Org_Group,sys_Event) ignore=Y

有关ORA-00959 错误的应对之道,参考文章:

​​快速解决IMP中的ORA-00959​​


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:陕西公务员成绩查询API(陕西省公务员成绩查询)
下一篇:Java 利用栈来反转链表和排序的操作
相关文章

 发表评论

暂时没有评论,来抢沙发吧~