ORA-00959: 表空间 'USERS' 不存在。但我在 select 结果中有它

ORA-00959: tablespace 'USERS' does not exist. But I have it in select results

我正在尝试导入使用 EXPDP 命令创建的数据库转储 {Oracle XE 11g (11.2.0.2.0)}。以下是我用来导入的命令。

impdp vnp/vnp directory=MY_DATA_PUMP_DIR dumpfile=EXPDP_DUMP_26_01_2018.DMP remap_schema=VNP_ADMIN:VNP remap_tablespace=SYSTEM:USERS,DATA:USERS; 

当我 运行 这个命令时,我得到了很多包含相同原因的错误

ORA-00959: tablespace 'USERS;' does not exist

但是,当我 运行 select tablespace_name from dba_tablespaces; 我看到 USERS 表空间存在。

SQL> select tablespace_name from dba_tablespaces;

TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS

看了几个相关的问题,发现可能和用户VNP的权限有关,我也提供了权限。

SQL> alter user vnp quota unlimited on users;
User altered.

SQL> grant UNLIMITED TABLESPACE to vnp;
Grant succeeded.

当我尝试导入此数据库转储时,我仍然遇到同样的错误。你能给我指出一个正确的方向来解释为什么会发生这种情况吗?提前致谢。

多么琐碎!

ORA-00959: tablespace 'USERS;' does not exist
                            ^
       tablespace doesn't really have a semi-colon as a part of its name, eh?

IMPDP 在操作系统命令提示符下是 运行。因此,它不需要(也不应该有)终结符(与SQL命令相反)。

此外,如果删除分号后仍然不起作用,请尝试将 REMAP_TABLESPACE 一分为二:

remap_tablespace=SYSTEM:USERS remap_tablespace=DATA:USERS