首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

ORA-12571:信息包写入异常

2012-07-18 
ORA-12571:信息包写入错误Oracle中关于该参数的解释:?SQLNET.AUTHENTICATION_SERVICESPurposeUse the para

ORA-12571:信息包写入错误

Oracle中关于该参数的解释:

?

SQLNET.AUTHENTICATION_SERVICES


Purpose

Use the parameter SQLNET.AUTHENTICATION_SERVICES to enable oneor more authentication services. If authentication has beeninstalled, it is recommended that this parameter be set to eithernone or to one of the authentication methods.


Default
None

?

Values
Authentication Methods Available with Oracle Net Services:

?

* none? for no authentication methods. A validusername and password can be used to access the database.
* all? ?for all authenticationmethods
* nts?? for Windows NT nativeauthentication

?

Windows NT native authentication

An authentication method that enables a client single loginaccess to a Windows NT server and a database running on theserver.


An authentication method that enables a client single login accessto a Windows NT server and a database running on the server.

?

从oracle的解释可以知道,SQLNET.AUTHENTICATION_SERVICES=(NTS)是WINDOWS系统专用的,对linux/UNIX是不适用的。个人猜测NTS应该指NTServer.

?

测试:设置SQLNET.AUTHENTICATION_SERVICES=(ALL)?时

?

C:\Documents and Settings\Administrator>sqlplus/nolog

SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 7月 23 15:33:182009

Copyright (c) 1982, 2004, Oracle.? All rightsreserved.

SQL> connect / as sysdba;
ERROR:
ORA-12641: 验证服务无法初始化

?

?

一个简单的总结:
1、在windows下,SQLNET.AUTHENTICATION_SERVICES必须设置为NTS或者ALL(10.2版本好像可以,未测试,10.1版本设置为ALL无法通过OS认证,显示ORA-12641:验证服务无法初始化)才能使用OS认证;不设置或者设置为其他任何值(包括NONE)都不能使用OS认证。


2、在linux下,在SQLNET.AUTHENTICATION_SERVICES的值设置为ALL,或者不设置的情况下,OS验证才能成功;设置为其他任何值都不能使用OS认证。

?

Windows2000环境下System文件坏掉了,不能启动,修复以后机器是启动了,但发现原来的Oracle服务都不见了,也没有什么重要的数据,就重装了一遍,装完以后一切正常,连接Oracle正常,重启动机器以后发现连接Oracle出现错误:ORA-12571:TNS包写入程序失败。用SQLPLUS /NOLOG也不能正常连接,报ORA-03113错误。

?

解决办法:

打开ora92\network\admin\sqlnet.ora

将参数SQLNET.AUTHENTICATION_SERVICES= (NTS) 改为:

SQLNET.AUTHENTICATION_SERVICES= (NONE)

即可成功解决这个问题. 这个问题导致原因很多.

?

原因分析:

我的情况估计是由于域 (NAMES.DEFAULT_DOMAIN)在系统恢复的时候出错了,具体是什么至今没有搞清楚 但是解决办法倒是被我搞定。操作系统大概真的需要重装一遍了,但是目前没时间了,用用再说。

热点排行