我解决办法是:
SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;
重启服务;
将sqlnet.ora文件打开(以记事本形式)将NTS验改为NONE
SQLNET.AUTHENTICATION_SERVICES= (NTS).
改:SQLNET.AUTHENTICATION_SERVICES= (NONE)
再登录即可。
如果再遇到UNDO错误的话
做以下操作:
Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 8月 15 17:21:12 2014
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
SQL> conn sys/sys as sysdba
已连接。
SQL> startup mount
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
SQL> create undo tablespace undotbs2 datafile 'D:\oracle\product\10.2.0\oradata
\orcl\UNDOTBS02.DBF' size 1G;
表空间已创建。
SQL> show parameter undo_
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL> alter system set undo_tablespace=UNDOTBS2 scope=spfile;
系统已更改。
SQL> alter system set undo_management=auto scope=spfile;
系统已更改。
然后再去重启oracle服务即可。