欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 导出移动表空间

程序员文章站 2022-06-01 10:15:57
...

Oracle 导出移动表空间,例如Oracle数据库有两个用户 一个 A对应表空间A 一个B对应表空间B

例如Oracle数据库有两个用户 一个 A对应表空间A 一个B对应表空间B

1.首先用A 导出dmp;

2.给B赋予DBA权限,然后执行: revoke unlimited tablespace from B;

3. alter user B quota 0 on A;

4. alter user B quota unlimited on B;

5. 执行导入 imp xxx/xxx@orcl_xxx.xxx.xxx.xxx fromuser=A touser=B file=xxx.dmp

如果表中包含lob 则不能导入,会报1536 异常。
6. 如果异常执行 alter user B quota unlimited on A; 重新导入带有lob的表。但是会导入到空间A中。

7. alter table A move tablespace B; 把A移动到B中

8. alter table B move lob(lob名) store as (tablespace B); 把A的lob字段移动到B

把lob 移动到B中,,最后就ok,别忘记每句最后都commit;