Oracle9i 中如何更改数据库的表空间?

it_wangxiangpan 2013-02-18 04:29:18
现在有用户A和B,表空间A_TABLESPACE和B_TABLESPACE;
用用户A默认的表空间为A_TABLESPACE;户B默认的表空间为B_TABLESPACE;
用户A在A_TABLESPACE中有数据表和视图以及函数和触发器,如何将A_TABLESPACE中的内容导入到B_TABLESPACE中去;
我使用
EXP username/password@SID file=xxx.dmp

IMP username/password@SID file=xxx.dmp full=y ignore=y

导入和导出,但是会出现一些异常,并且,导过去之后,在B_TABLESPACE中的表所处于的表空间仍旧是之前的A_TABLESPACE,如何解决这一问题?
...全文
183 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
linwaterbin 2013-02-18
  • 打赏
  • 举报
回复
没有做过9i的 你参考一下:http://www.adp-gmbh.ch/ora/admin/move_datafiles.html
it_wangxiangpan 2013-02-18
  • 打赏
  • 举报
回复
引用 2 楼 detail11 的回复:
从A用户导出,导入到B用户是可以的,只要你建立用户的时候,默认的表空间都分别是对应的表空间就可以,你说的现象还没有遇到过
它们对应的是不同的表空间,这样导入后,表空间要求必须为B默认的表空间,但是却没有。
detail11 2013-02-18
  • 打赏
  • 举报
回复
从A用户导出,导入到B用户是可以的,只要你建立用户的时候,默认的表空间都分别是对应的表空间就可以,你说的现象还没有遇到过
ajune 2013-02-18
  • 打赏
  • 举报
回复
楼主使用imp/exp应该可以的,导入后修改表空间试试看使用语句:alter table table_name move tablespace tablespace_name 同时也更改其索引:alter index index_name rebuild tablespace tablespace_name 但是如果含有blob字段的表就不好办了

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧