我用exp和imp导出导入表,为什么imp导入时总是不成功,提示无法使用所有者?
C:\Documents and Settings\jy.huang>exp sys/[email protected] tabl
es=sys.ts$ file=g:\aaaa grants=yExport: Release 8.1.7.0.0 - Production on 星期四 12月 17 16:29:49 2009(c) Copyright 2000 Oracle Corporation.  All rights reserved.连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
JServer Release 8.1.7.0.0 - Production
已导出 ZHS16GBK 字符集和 ZHS16GBK NCHAR 字符集即将导出指定的表通过常规路径 ...
. . 正在导出表                             TS$          7 行被导出
在没有警告的情况下成功终止导出。
C:\Documents and Settings\jy.huang>imp sys/[email protected] tabl
es=sys.ts$ file=g:\aaaa fromuser=sys touser=sysImport: Release 8.1.7.0.0 - Production on 星期四 12月 17 16:30:01 2009(c) Copyright 2000 Oracle Corporation.  All rights reserved.
连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
JServer Release 8.1.7.0.0 - Production经由常规路径导出由EXPORT:V08.01.07创建的文件
已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入
IMP-00029: 无法使用所有者 (sys.ts$) 限制表名称, 请使用 FROMUSER 参数
IMP-00000: 未成功终止导入

解决方案 »

  1.   

    把imp命令的参数“tables=sys.ts$”改为“tables=ts$”看看。
      

  2.   

    IMP-00029: cannot qualify table name by owner (string), use FROMUSER parameterCause: A table name was qualified with the name of its owner, as shown in the following example. This is not allowed. IMP SYSTEM/MANAGER TABLES=(SCOTT.EMP)Action: Use the FROMUSER parameter to specify the table's owner, as shown in the following example: IMP SYSTEM/MANAGER FROMUSER=SCOTT TABLES=(EMP) 
      

  3.   


    楼主是按表导出的数据,可你的导入是 用户 + 表,没有这种导入语法,所以报错。 导入语句改成:
    imp sys/[email protected] tables=sys.ts$ file=g:\aaaa 
    试试..------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716
      

  4.   

    可以参考下我的Blog:ORACLE 数据库逻辑备份 简单 EXP/IMP
    http://blog.csdn.net/tianlesoftware/archive/2009/10/24/4718366.aspx
    ------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716
      

  5.   

    当导出和导入的用户不同的时候,导入时请使用fromuser和touser关键字,进行角色转换 
      

  6.   

    改成imp sys/[email protected] tables=sys.ts$ file=g:\aaaa 还是报一样在错误。
    我导出导入的用户是一样在啊
      

  7.   


    tables=ts$ 试试看
    我估计这样会提示目标对象已经存在,这样就得加多个ignore=y参数值。
      

  8.   

    比如你导出的dmp文件的用户是:user1
    导入得用户是:user2则应该按照如下写:
    imp sys/[email protected] tables=sys.ts$ file=g:\aaaa fromuser=user1 touser=user2
      

  9.   

    应该这样写:
    imp sys/[email protected] tables=sys.ts$ file=g:\aaaa 
      

  10.   

    原因是这样的:imp / exp 后面有ignore = y ,要加上,因为可能的数据库中已经有着个表了,会冲突的!