Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3583452
  • 博文数量: 109
  • 博客积分: 10011
  • 博客等级: 上将
  • 技术积分: 2457
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-18 19:04
文章分类

全部博文(109)

文章存档

2011年(1)

2010年(10)

2009年(36)

2008年(62)

我的朋友

分类: Oracle

2008-11-21 18:26:36

  

   缺省情况下,导入试图在与导出相同的表空间中创建对象。如果用户不具有那个表空间的权限,或者那个表空间不存在时,Oracle在用户帐户的缺省表空间中创建数据库对象。这些特性可以用于使用导出与导入在表空间之间移动数据库对象。要为USER_A将TABLESPACE_A的所有对象移动到TABLESPACE_B,应遵循以下步骤:  
   
  1   为USER_A导出TABLESPACE_A中的所有对象。  
   
  2   执行REVOKE   UNLIMITED   TABLESPACE   ON   TABLESPACE_A   FROM   USER_A;以收回任何授予用户帐户的无限制表空间权限。  
   
  3   执行ALTER   USER   USER_A   QUOTA   0   ON   TABLESPACE_A;以使USER_A帐户不能在TABLESPACE_A上创建任何对象。  
   
  4   删除TABLESPACE_A中USER_A拥有的所有对象。  
   
  5   执行ALTER   USER   USER_A   DEFAULT   TABLESPACE   TABLESPACE_B;以使TABLESPACE_B成为USER_A用户帐户的缺省表空间。Oracle试图将对象导入TABLESPACE_A,因为这些对象是从TABLESPACE_A导出的。注意用户不具有TABLESPACE_A上的配额。然后将查看用户的缺省表空间。在Oracle可以将数据导入TABLESPACE_B之前,必须给予USER_A用户该表空间上足够大的配额,如下步骤所示。  
   
  6   执行ALTER   USER   USER_A   QUOTA   UNLIMITED   ON   TABLESPACE_B;  
   
  7   导入被导出的数据库对象。缺省情况下,导入工具试图将它们导入到TABLESPACE_A中,然而,因为用户不具有这个表空间的配额,所以所有的对象将被创建在USER_A的缺省表空间TABLESPACE_B中。

 

 

重新构造index:

alter   index   XPKM_SENDMATERIAL   rebuild   reverse;

阅读(1538) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~