时间:2021-07-01 10:21:17 帮助过:36人阅读
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;