IMP数据到指定的表空间(zz)
自己做的处理,首先照下面操作。如果建的表中有LOB列,LOB列是建在原来表空间中,比如说SYSTEM,这样导入时还是会导入到SYSTEM表空间中。没有权限就会报错。
采用了一个暴力方法,用vim打开DMP文件,将TABLESPACE "SYSTEM"全换成TABLESPACE "USERS", "SYSTEM".也全换成"USERS".,再导入可以成功,但不知有没有后患。
=====另一篇========================
Oracle imp导入数据指定表空间
=======================下面的分界线============================================
原文:http://www.cnblogs.com/KissKnife/archive/2007/09/17/896459.HTML
一直以来,我都认为只要指定用户的默认表空间,向该用户导入数据时,会自动进入到默认表空间。后来发现从System导出的dmp文件在导入时,即使指定新用户的默认表空间,还是要往System表空间中导数据。
上网搜了一下,还是有解决方法的,常见的方法如下:
SQL> create user myhuang identified by myhuang default tablespace myhuang;
SQL> grant resource,connect to myhuang;
SQL> grant dba to myhuang;//赋DBA权限
SQL> revoke unlimited tablespace from myhuang;//撤销此权限
SQL> alter user myhuang quota 0 on system;//将用户在System表空间的配额置为0
SQL> alter user myhuang quota unlimited on myhuang;//设置在用户在myhuang表空间配额不受限。
经过上述设置后,就可以用imp导入数据,数据将会进入指定的myhuang表空间:
C:\Documents and Settings\myhuang>imp system/123456@vdb fromuser=lnxh tous
er=myhuang file=G:\myhuang\lnxh.dmp ignore=y grants=n
页:
[1]