exp 导多个用户数据时报 syntax error near unexpected token `('

来源:互联网 发布:c gui qt4编程 编辑:程序博客网 时间:2024/05/29 16:04

oracle 中在使用 exp同时导多个用户的数据时报如下错误:

exp system/oracle  owner=(dj,test) log=/home/oracle/0724.log  file=0724.dmp  grants=y rows=y

           syntax error near unexpected token `('

 

 

 

-bash-3.2$ exp   -help

Export: Release 10.2.0.1.0 - Production on Wed Jul 24 11:36:55 2013

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

 

You can let Export prompt you for parameters by entering the EXP
command followed by your username/password:

     Example: EXP SCOTT/TIGER

Or, you can control how Export runs by entering the EXP command followed
by various arguments. To specify parameters, you use keywords:

 

     Format:  EXP KEYWORD=value or KEYWORD=(value1,value2,...,valueN)
     Example: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
               or TABLES=(T1:P1,T1:P2), if T1 is partitioned table

USERID must be the first parameter on the command line.

Keyword    Description (Default)      Keyword      Description (Default)
--------------------------------------------------------------------------
USERID     username/password          FULL         export entire file (N)
BUFFER     size of data buffer        OWNER        list of owner usernames
FILE       output files (EXPDAT.DMP)  TABLES       list of table names
COMPRESS   import into one extent (Y) RECORDLENGTH length of IO record
GRANTS     export grants (Y)          INCTYPE      incremental export type
INDEXES    export indexes (Y)         RECORD       track incr. export (Y)
DIRECT     direct path (N)            TRIGGERS     export triggers (Y)
LOG        log file of screen output  STATISTICS   analyze objects (ESTIMATE)
ROWS       export data rows (Y)       PARFILE      parameter filename
CONSISTENT cross-table consistency(N) CONSTRAINTS  export constraints (Y)

OBJECT_CONSISTENT    transaction set to read only during object export (N)
FEEDBACK             display progress every x rows (0)
FILESIZE             maximum size of each dump file
FLASHBACK_SCN        SCN used to set session snapshot back to
FLASHBACK_TIME       time used to get the SCN closest to the specified time
QUERY                select clause used to export a subset of a table
RESUMABLE            suspend when a space related error is encountered(N)
RESUMABLE_NAME       text string used to identify resumable statement
RESUMABLE_TIMEOUT    wait time for RESUMABLE
TTS_FULL_CHECK       perform full or partial dependency check for TTS
VOLSIZE              number of bytes to write to each tape volume
TABLESPACES          list of tablespaces to export
TRANSPORT_TABLESPACE export transportable tablespace metadata (N)
TEMPLATE             template name which invokes iAS mode export

Export terminated successfully without warnings.

查看使用文档是没错,但忽略了bash的问题:

做如下检查:

echo foo=(bar,baz)
echo "foo=(bar,baz)"
echo foo="(bar,baz)"
echo foo="("bar,baz")"

除第一种外,其他方式均可,于是可参考其余方式修改,问题解决。

exp system/oracle  owner="(dj,test)" log=/home/oracle/0724.log  file=0724.dmp  grants=y rows=y;

同样,也可以使用转义处理:

exp system/oracle owner=\(dj,test\)  log=/home/oracle/0724.log file=0724.dmp grants=y rows=y;