ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 表、索引迁移表空间alter table move

表、索引迁移表空间alter table move

原创 Linux操作系统 作者:liujinwei633 时间:2009-03-26 17:17:26 0 删除 编辑
        今天将一个系统从开发环境迁移到生产环境时,发现了了个用户小问题:
开发环境下的数据库用户都是具有dba角色,生产环境就严格了许多。迁移完成后报告说××表空间不够了。而这个表空间并不是此用户的缺省表空间,它根本就没权限使用这个表空间的。立即想到可能是这个用户是将表建在了别的表空间了。一检查,果然发现有部分表的表空间不对。

那就将这些表迁移回应该的表空间。
    alter table tb_name move tablespace ts_name;
此命令后需要rebuild index
    alter index idx_name rebuild tablespace ts_name;

注意:
     1。如果表上有主键,则主键建立的唯一索引也需要rebuild
     2.。在delete掉大表的数据后执行alter table tb_name move命令可以调整HWM、回收了extent
     3。这种方式对long 或 long raw 字段不适用,但可以用exp/imp的方法.


select extents,segment_name from dba_segments
 where SEGMENT_NAME='TEST' and WNER='×××';


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/32939/viewspace-580274/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-11-11

  • 博文量
    17
  • 访问量
    51728