您的位置:首页 > 数据库 > Oracle

在使用exp/imp时如何实现导入数据到指定的表空间

2007-05-23 23:34 651 查看
经常会有这种情况,从某数据库中的A表空间导出数据文件,在导入另一个数据库是由于某种规范或原因需要导入数据到B表空间,Oracle似乎对这种情况没有处理,exp的参数中没有相关选项,导出的文件使用文本编辑器打开可以明显的看到原有表空间的名字

我们可以现在目标数据库建立相同的表空间,导入数据后将table和index move到指定表空间,但是lob的index是无法移动的,所以不能彻底解决问题

今天发现了一个简单的方法,可以实现简单易行:

首先按照正常操作导出数据文件

然后使用VIM打开数据文件,不能用普通的文本编辑器或emedit,ut等,那会破坏文件结构

使用如下命令替换表空间名称-- :%s/TABLESPACE "A"/TABLESPACE "B"/g

保存推出

使用imp命令导入到目标数据库中(目标数据库必须有B表空间)

经测试,数据导入到B表空间后运行正常
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息