最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Windows环境下ORA-12638错误及SYS用户登陆权限验证

来源:动视网 责编:小采 时间:2020-11-09 11:06:32
文档

Windows环境下ORA-12638错误及SYS用户登陆权限验证

Windows环境下ORA-12638错误及SYS用户登陆权限验证:今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了ldquo;ORA-12638:Credenti 今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了“
推荐度:
导读Windows环境下ORA-12638错误及SYS用户登陆权限验证:今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了ldquo;ORA-12638:Credenti 今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了“


今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了ldquo;ORA-12638:Credenti

今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了“ORA-12638:Credential retrieval failed”错误。

原因是:Oracle不能应用操作系统认证而导致的。电脑的用户是域用户,可能是域用户没有走操作系统认证的权限。

解决方法:将sqlnet.ora文件里的SQLNET.AUTHENTICATION_SERVICES= (NTS)注释掉,或者将这个参数改为SQLNET.AUTHENTICATION_SERVICES= (NONE)。

NTS是Windows操作系统登录数据库的验证方式,SQLNET.AUTHENTICATION_SERVICES= (NTS)这个参数只对Windows系统有效,这个参数等于NTS,即可以用口令文件验证,又可以用操作系统验证的方式来登录Oracle数据库;这个参数等于NONE表示只允许使用口令文件验证的方式来登录数据库。而一般情况下域用户不能应用操作系统认证而身份证明检索失败。

Oracle登录认证有两种方式:

Oracle普通用户的密码是存在数据库的数据字典里,所以普通用户只有在数据库OPEN状态下才能登录数据库。但有两种用户可以在数据库没有打开的状态下登录数据库,这就是具有SYSDBA和SYSOPER权限的用户。这两种用户登录数据库有两种方式,操作系统(OS)认证和口令文件认证。用户到底采用哪种方式登录,取决于sqlnet.ora文件中的SQLNET.AUTHENTICATION_SERVICES参数。该参数的值设置为NTS,允许用户使用OS认证,此时用户可以不使用密码直接登录数据库,即“sqlplus / as sysdba”。该参数值为NONE,则关闭OS认证,此时用户只能通过口令文件认证的方式登录数据库。

用户能否通过口令文件验证成功登录数据库,受以下两个因素制约:

1、参数文件中的remote_login_passwordfile参数,该参数有以下3个值可以设子:

NONE:指示Oracle系统不使用口令文件,拥有SYS权限的用户通过OS认证的方式登录数据库。

EXCLUSIVE:指只有一个数据库实例可以使用此口令文件。只有在此设置下的口令文件可以包含除INTERNAL/SYS以外的用户信息,即允许将SYSDBA/SYSOPER权限授予除INTERNAL/SYS以外的其他用户。(10g和11g默认)

SHARED:指可有多个数据库实例使用此口令文件。在此设置下只有INTERNAL/SYS用户能被口令文件识别,,即使文件中存有其他用户的信息,也不允许他们一SYSDBA/SYSOPER的权限登录。

可以通过下面的命令查看remote_login_passwordfile的参数值:

SQL> show parameter remote_login_password

NAME TYPE VALUE

------------------------------------ ----------- ----------------------

remote_login_passwordfile string EXCLUSIVE

可以通过查询V$PWFILE_USERS视图来查看拥有SYSDBA/SYSOPER权限的用户信息:

SQL> select * from v$pwfile_users;

USERNAME SYSDB SYSOP

------------------------ ----- -----

SYS TRUE TRUE

2、口令文件是否存在,密码是否正确。

在remote_login_passwordfile参数设置为EXCLUSIVE、SHARED的情况下,用有SYSDBA和SYSOPER权限的用户可以使用口令文件验证的方式登录数据库。Oracle搜索口令文件的次序为:

(1)、在系统注册库中查找ORA_SID_PWFILE参数值(它为口令文件的全路径名);

(2)、若未找到,则查找ORA_PWFILE参数值;

(3)、若仍未找到,则使用缺省值ORACLE_HOME\DATABASE\PWDSID.ORA;

文档

Windows环境下ORA-12638错误及SYS用户登陆权限验证

Windows环境下ORA-12638错误及SYS用户登陆权限验证:今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了ldquo;ORA-12638:Credenti 今天在Windows XP上安装Oracle 10g时,安装Oracle软件时没有出现问题,但是在DBCA建库的时候,出现了“
推荐度:
标签: 登录 用户 Windows
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top