现在的位置: 首页 > 综合 > 正文

如何将多个表空间的数据导入到单个表空间(USER_A到USER_B)

2013年04月18日 ⁄ 综合 ⁄ 共 1017字 ⁄ 字号 评论关闭

 1.USER_A的数据保存在多个表空间中,首先导出USER_A的数据:

           exp USER_A/PASS_A@DB_A file=USER_A_BAK.dmp  log=exp_USER_A.log

        2.创建用户USER_B:
       
           create user USER_B
           identified by "USER_B"
           default tablespace USER_B_DEFAULT_TABLESPACE
           temporary tablespace TEMP
           profile DEFAULT
           quota unlimited on USER_B_DEFAULT_TABLESPACE;
         
           grant connect to USER_B with admin option;
           --grant dba to USER_B with admin option;
           --grant resource to USER_B;
           --grant unlimited tablespace to USER_B with admin option;
                      
     3.导入数据到USER_B:
    
         imp USER_B/USER_B@DB_B file=USER_A_BAK.dmp fromuser=USER_A touser=USER_B log=imp_USER_B.log
        
     4.注意点:
    
         --前面不能授予这些权限(在第二步已经注释),导完后授权
        grant dba to USER_B with admin option;
        grant resource to USER_B;   
        grant unlimited tablespace to USER_B with admin option; 

(以下内容于2007年11月16日补充:)

授予用户resource角色会自动授予用户unlimited tablespace 权限,可以参考:

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1063989617206

 

【上篇】
【下篇】

抱歉!评论已关闭.