热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

连接Oracle时出现ORA-12514错误解决方法

发现大多是说listener.ora配置文件的事,但是我的系统是一直正常运行的啊,不应该突然出现这个情况。后来偶然发现,在Windows环境

发现大多是说listener.ora配置文件的事,但是我的系统是一直正常运行的啊,不应该突然出现这个情况。后来偶然发现,在Windows环境

最近在测试用的windows环境下的Oracle 11g,用一段时间后就出现

ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务

网上搜索了一圈,发现大多是说listener.ora配置文件的事,,但是我的系统是一直正常运行的啊,不应该突然出现这个情况。后来偶然发现,在Windows环境下的Oracle 11g会有这么一个问题。Oracle 11g会默认写审计日志,会写到操作系统的“应用程序”日志里面去。当应用程序日志被写满后。相当于用户登录审计没办法记录,机会出现登陆不了,而报ORA-12514这个错误。

Linux-6-64下安装Oracle 12C笔记

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

临时解决办法,清除日志

控制面板 -> 管理工具 -> 事件查看器 -> 应用程序 -> 右键 -> 清除所有事件

这样就可以正常登陆oracle了

另外的解决办法就是关闭oracle的审计

1、用oracle用户登录到数据库服务器,执行:

sqlplus / as sysdba

2、取消audit,将初始化参数audit_trail设置为NONE

alter system set audit_trail=none scope=spfile;

3、然后重启数据库.

shutdown immediate;

sqlplus / as sysdba

startup;

4、删除签权数据,oracle用户登录到数据库服务器:

sqlplus / as sysdba

truncate table SYS.AUD$;

后来,经过测试发现,正常的日志写满,导致不能登陆的提示应该是这样的:

ERROR:

ORA-28056: 未能将审计记录写入 Windows 事件日志

OSD-748745664: Message 748745664 not found; product=RDBMS; facility=SOSD

O/S-Error: (OS 1502) 事件日志文件已满。

ORA-02002: 写入审计线索时出错

ORA-28056: 未能将审计记录写入 Windows 事件日志

OSD-748746736: Message 748746736 not found; product=RDBMS; facility=SOSD

O/S-Error: (OS 1502) 事件日志文件已满。

如果是出现这样的提示,问题的原因就很明确了。按照上面的方式就可以处理了


推荐阅读
author-avatar
川人是天下的盐恋歌_334
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有