场景如下:
在win2003上安装oracle10g
1、默认用户表空间为users,默认临时表空间为temp,通过em新建用户表空间loan7001user,临时表空间loan7001temp2、指定表空间,执行语句:
create user loan7001 identified by loan 
default tablespace loan7001user 
temporary tablespace loan7001temp;3、对loan7001用户赋dba权限4、执行语句:
select username,default_tablespace,temporary_tablespace from dba_users 查看空间配置情况,此时loan7001用户的用户表空间为loan7001user,临时表空间为loan7001temp,其它用户依旧使用默认的users空间5、导入数据,执行语句:
imp loan7001/loan@loan2 full=y file=d:/test.dmp问题:
导入后发现依旧占用的是USERS空间,loan7001空间未占用
1、请问是因为loan7001用户为dba权限所以造成导入数据依然向users表空间导入数据吗?
2、如何使得loan7001用户数据存放到loan7001user空间?
3、已经尝试在em中将loan7001user空间作为默认的表空间,但是之后查看发现所有用户的空间都使用loan7001user空间,期望的是只用loan7001用户才使用loan7001user空间,是否可以实现?对oracle表空间认识肤浅,万分感谢您的回复

解决方案 »

  1.   

    test.dmp 原先对象表空间如果是user的话,导入也是user表空间的,除非你对用户不赋予user表空间上的资源或者删除表空间user才行。 
      

  2.   

    万分感谢,那我明白了,我的test.dmp中原先确实就是user空间导出的,那如果导入数据以后由loan7001用户发生的数据是否会存放在loan7001user空间中那,如果这样的话那以后exp出来的数据是不是会有一部分user空间的一部分loan7001user空间,岂不是很乱,感觉很危险啊,不知道理解的对不对
      

  3.   

    导出导入和登录用户的default表空间没有关系,登录用户只需要有相应的导入导出权限就可以了。对象原来属于那个表空间,导出后还属于那个表空间。