有这样的一个问题,就是在导入数据库的dmp的时候,如何指定导入到某个指定的表空间里面。
还有就是如果已经导入完毕,想修改成指定的表空间应该如何处理。
谢谢,各位了啊。

解决方案 »

  1.   

    是数据导入dmp的时候,表都导入到系统默认的表空间里面了。另外,如果数据已经导入到数据库里面,如何修改表空间。
      

  2.   

    删除导入数据所在的用户,这样所有的导入数据全部删除。从新建这个用户,用户指定的表空间就是你要导入的数据存放的表空间!前提dmp导入到这个用户下面。
      

  3.   

    create tablespace 表空间名称 datafile 'D:\Program Files\oracle10\pmssd\文件名称.dbf' size 2048m autoextend on next 100m; --创建表空间
    create user 用户名称--创建用户,并授DBA权限
      identified by "123456"--密码
      default tablespace 表空间名称
      temporary tablespace temp;
    grant dba to 用户名称;
     
    exp 用户名称/123456@数据库实例名 file=d:\systables.dmp full=y--导入dmp
      

  4.   


    9I导入时不好指定表空间,请参考:
    http://hi.baidu.com/yibit/blog/item/679e830aba3ad91694ca6b4c.html  
    不过能指定用户。
    10G的话用data pump的remap_tablespace参数就可以指定原表空间、目标表空间。至于导入完毕后,要么直接修改表空间名,要么再次导出然后导入。至于索引,一个道理。
      

  5.   

    在导入之前已经创建了用户,而已已经指定了用户的表空间,和临时表空间。但是导入的数据都在system的表空间下面。
    我顶。有什么修改的好方法那。
      

  6.   

    我有一个修改表空间的工具,你不妨感觉一下http://download.csdn.net/source/2392321
      

  7.   

    --创建用户时就已经指定了表空间
    CREATE USER username IDENTIFIED BY pwd DEFAULT TABLESPACE tbname
    TEMPORARY TABLESPACE TEMP ACCOUNT UNLOCK;cmd-- imp help=y 
    查看帮助无法指定表空间,因为建表的时候就已经指定了表空间
      

  8.   

    在新的数据库里面建立了帐号,并且已经指定了表空间,我将dmp的文件导入到这帐号数据库里面,
    没有导入到该帐号下指定的表空间,如何修改。谢谢