ORA-12571:信息包写入错误

Oracle中关于该参数的解释:

 

SQLNET.AUTHENTICATION_SERVICES


Purpose

Use the parameter SQLNET.AUTHENTICATION_SERVICES to enable one or more authentication services. If authentication has been installed, it is recommended that this parameter be set to either none or to one of the authentication methods.


Default
None

 

Values
Authentication Methods Available with Oracle Net Services:

 

* none  for no authentication methods. A valid username and password can be used to access the database.
* all   for all authentication methods
* nts   for Windows NT native authentication

 

Windows NT native authentication

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


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

 

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

 

测试: 设置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:18 2009

Copyright (c) 1982, 2004, Oracle.  All rights reserved.

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) 在系统恢复的时候出错了,具体是什么至今没有搞清楚 但是解决办法倒是被我搞定。操作系统大概真的需要重装一遍了,但是目前没时间了,用用再说。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值