IMP 时的 ORA-01435 user does not exist 处理
在做IMP全导入 时,首先创建好表空间(因为文件位置不同),导入时加上ignore=y 选项,原以为就能成功导入。结果最后报:
"ALTER SESSION SET CURRENT_SCHEMA= "MATERIAL""
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
IMP-00000: Import terminated unsuccessfully
从错误来看,是因为MATERIAL用户不存在,翻看日志,在前面找到:
MP-00017: following statement failed with ORACLE error 959:
"CREATE USER "MATERIAL" IDENTIFIED BY VALUES 'EBFAC36458941377' DEFAULT TABL"
"ESPACE "TSP_MATERIAL" TEMPORARY TABLESPACE "TEMP""
IMP-00003: ORACLE error 959 encountered
ORA-00959: tablespace 'TSP_MATERIAL' does not exist
原来是因为表空间TSP_MATERIAL不存在,引起不能创建用户MATERIAL。
重新创建TSP_MATERIAL 表空间,问题解决。
小结: 这种问题一般伴随ALTER SESSION SET CURRENT_SCHEMA 语句存在。另外,ignore 也不是什么错都忽略,还是有选择性的。