日期:2014-05-16  浏览次数:20448 次

Oracle报错:"ORA-18008: 无法找到 OUTLN 方案 "的解决方案

       

今天连接到Oracle报错:ORA-18008: 无法找到 OUTLN 方案,前天还用得好好的,现在无论查询任何sql语句或点击列表查看都会弹出该错误提示,忙活了一阵,终于解决了,现记录一下解决方案。

       

问题:ORA-18008: 无法找到 OUTLN 方案。


问题原因:outln用户被误删除。


数据库版本:Oracle 10g( 10.2.0.3.0 )

 

解决步骤:

1、将oracle启动到mount状态(sql命令:startup mount;)

SQL> startup mount;
ORA-01031: 权限不足

 Note:哈哈,提示权限不足,没关系, 用系统账号登..


SQL> connect / as sysdba;
 已连接。


SQL> startup mount;
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它

Note:心急吃不了热豆腐啊。。。


SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。


SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             314575220 bytes
Database Buffers          268435456 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。

Note:运气不错,进入mount状态...


2、修改replication_dependency_tracking参数

SQL> alter system set replication_dependency_tracking =false scope=spfile;
系统已更改。


3、启动数据库至open状态

SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。


SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             318769524 bytes
Database Buffers          264241152 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。
数据库已经打开。


4、创建outln用户

SQL> create user outln identified by outln;
用户已创建。


SQL> select username from dba_users;
USERNAME
------------------------------
OUTLN
SYS
SYSTEM
SCOTT
Note:outln用户果然创建成功了。。。


5、修改回replication_dependency_tracking参数为true

SQL> alter system set replication_dependency_tracking =true scope=spfile;
系统已更改。


6、重新启动数据库,系统恢复正常

SQL> shutdown abort;
ORACLE 例程已经关闭。

SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  591396864 bytes
Fixed Size                  1291916 bytes
Variable Size             322963828 bytes
Database Buffers          260046848 bytes
Redo Buffers                7094272 bytes
数据库装载完毕。
数据库已经打开。


Ok,搞定!