Invalid QUERY in impdp
- From: Tom Lanyon <tom@xxxxxxxxxxxxxx>
- To: oracle-l <oracle-l@xxxxxxxxxxxxx>
- Date: Sat, 24 Apr 2010 09:59:40 +0930
Hi list,
I'm trying to datapump import a large table across a nework link. To improve
performance, I was planning to run multiple impdp processes in parallel, on
subsets of the table. The table is not partitioned and so I was going to use a
QUERY filter to limit the scope, for example:
$ impdp 'scott/tiger' DIRECTORY=DATA_PUMP_DIR \
NETWORK_LINK=remote_db \
TABLE_EXISTS_ACTION=APPEND \
CONTENT=DATA_ONLY \
TABLES=SCOTT.EMP \
'QUERY="WHERE id IN (SELECT id FROM (SELECT id, ROWNUM rnum FROM
scott.emp ORDER BY id ASC) WHERE rnum >= 85000000 AND rnum < 170000000)"'
... however, I receive the following error:
> Import: Release 10.2.0.4.0 - 64bit Production on Saturday, 24 April, 2010
> 9:52:05
>
> Copyright (c) 2003, 2007, Oracle. All rights reserved.
>
> Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 -
> 64bit Production
> With the Partitioning, OLAP, Data Mining and Real Application Testing options
>
> UDI-00014: invalid value for parameter, 'schemas'
I assume it's not interpreting the QUERY parameter properly and is resorting to
positional parameters (rather than named parameters) because I'm not using the
"schemas" parameter anywhere.
I have tested and confirmed that the parameter is passed correctly (i.e. any
shell quoting is correct) from the shell to impdp.
I have also tried placing the QUERY parameter in a file and using
PARFILE=query.par to include it, effectively eliminating shell/syntax errors.
Anyone experienced this before and have any suggestions or solutions?
Regards,
Tom--
http://www.freelists.org/webpage/oracle-l
Other related posts: