1、在new上创建与old上相同的表空间,用户,
   并且让用户指向新的表空间,注意角色应该是有dba权限的
2、按照你的语句
   exp test/test@ora9i owner=test file=e:\db.dmp rows=y  log=e:\db_log.log;
   是把所有的表结构、数据、约束、序列、触发器一起导出了,
   不要结构、数据分开处理,oralce在导入时会自动处理
3、数据量比较大的情况下导出的时间势必要长,一定注意切断服务器与外界的连接,
   避免导出过程中有被连接的可能,这样的话可能会导致序列出错等系列问题
4、导出对原先的数据、系统没有任何影响

解决方案 »

  1.   

    新数据库中的表空间名可以不同。
    关于第2个问题,oracle是在执行imp的最后创建约束,如果希望手工做,可以先用带INDEXFILE参数的imp命令生成所有对象的创建脚本,然后用带constraint=n的参数来执行imp,最后在从前面生成的脚本中找出创建约束的语句执行。
    由于数据多,如果exp时有客户端在写数据库,exp出来的数据可能会有表间的数据不一致。