这是因为在你导出的用户数据就占用了这么多空间,你导入的时候,那些存储参数没有变化,所以才会这样。
你可以这样做:
导入的时候:imp indexfile=...;加个indexfile,然后把那个文件中的存储参数修改成适合你的,这样就可以了。
试一下吧!
你可以这样做:
导入的时候:imp indexfile=...;加个indexfile,然后把那个文件中的存储参数修改成适合你的,这样就可以了。
试一下吧!
调试欢乐多
导第二用户的数据表时,几十k的占了5g的表空间,只到了数据结构,占有的却是第一个用户的表空间。
在用户下新建表,占用的表空间又是对的。大家遇到过这种问题没有,怎么解决?????谢谢
如果导入时库中没有对应的表空间才使用default tablespace
1、Windows NT4.0+ORACLE 8.0.4
2、ORACLE安装路径为:C:\ORANT解释原因:
1、一般情况下,用export导出来的dmp文件中,包含表的storage信息, 如果导出的是一个很大的表,比如有1000万条记录,则此表的storage默认初始大小已达到上百兆, 这样如果你使用rows=n选项,即使导出来的dmp文件大小只有不到一兆, 导入时,系统会按storage默认初始大小来分配表空间,所以一下就占用了很多的空间, 如果剩余表空间不够,并且没有设置成自动扩展(数据文件),还会发生导入错误。
2:关于导入表空间出错原因:
假如你导出时用SYSTEM导出,导入时也用SYSTEM则会导入到系统表空间中。
如果想保证一致:最好导出和导入时都用表空间的默认用户。例:A表空间默认用户为是USER1,则导出和导入A时均用USER1.(当然最后给USER1有DBA权限)。
我有个导入用户是实时用户,数据有几十G,现在不需要建这么大的表空间了
有没有更好的方法,而且原来的表空间名称不记得了。2: 我的具体导出、导出 : aa(老) 导入到 bb(新)
旧数据库
使用 aa 用户进行导出操作,导出的用户也是 aa ,aa 赋了DBA权限新数据库
使用 bb 用户进行导入操作,导入的用户是aa,bb 赋了DBA权限aa用户 bb用户都单独建立了表空间和临时表空间这样操作有什么问题
select dbms_lob.getlength(字段名) from 表名;注:字段类型为blob。