日期:2014-05-17  浏览次数:20967 次

关于ORACLE 将一个用户下的内容复制到另一个用户中
使用ORACLE9i,现有一个用户 test01,里面有很多表,包,函数,存储过程,触发器等等,然后另建立一个用户test02,需要把test01用户下的所有内容都复制到test02中,请教大家如何解决,不胜感激!
------解决方案--------------------
3. 三种模式 
    (1)表方式,将指定表的数据导出/导入。 
    导出:导出一张或几张表:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2 
    导出某张表的部分数据 
    $ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1 query=\“where col1=\‘…\’and col2 \<…\” 
    导入:导入一张或几张表 
    $ imp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1, 
    table2 fromuser=dbuser touser=dbuser2 commit=y ignore=y 
    (2)用户方式,将指定用户的所有对象及数据导出/导入。 
    导出:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=(xx, yy) 
    只导出数据对象,不导出数据 (rows=n ) 
    $ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=user rows=n 
    导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2 
    commit=y ignore=y 
    (3)全库方式,将数据库中的所有对象导出/导入导出: 
    $ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=ycommit=y ignore=y 
    导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2 

------解决方案--------------------
引用:
使用ORACLE9i,现有一个用户 test01,里面有很多表,包,函数,存储过程,触发器等等,然后另建立一个用户test02,需要把test01用户下的所有内容都复制到test02中,请教大家如何解决,不胜感激!

--test01导出
exp test01/密码@实例名 file=test01.dmp owners=test01 log=test01.log

--test02导进
imp test02/密码@实例名 file=test01.dmp fromuser=test01 touser=test02 ignore=y constraints=y grants=y