当前位置:数据库 > Oracle >>

Oracle 10g SYS用户认证方式总结

Oracle 10g SYS用户认证方式总结
 
OS: Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
uname -r: 2.6.9-22.EL
DB: Oracle Database 10g Release 10.2.0.1.0
第一种情况:初始化参数 remote_login_passwordfile 设置为 EXCLUSIVE
 
1. 本地SYS用户登录的情况:
在  $ORACLE_HOME/network/admin/ 目录下查看  sqlnet.ora,默认为:
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
 
    此时本地sys用户的认证方式为系统认证,即可以 sqlplus / as sysdba 方式登录,不检查口令文件。
 
   如果在sqlnet.ora 中额外添加:
  SQLNET.AUTHENTICATION_SERVICES= (NTS)  或  SQLNET.AUTHENTICATION_SERVICES= (NONE)
  则本地SYS用户必须以 sqlplus sys/123456 as sysdba 方式登录。
  此时本地sys用户认证方式为口令认证,需要检查口令文件,口令文件格式为 orapwSID。如口令文件丢失,则报ORA-01031。 
重建口令文件的方法: orapwd file=orapworcl password=123456 entries=2
 
2. 远程SYS用户登录的情况:
     远程SYS用户登录,一律以 sqlplus sys/123456@orcl as sysdba  的方式登录(无论服务器端sqlnet.ora中如何设置)。
 
     若远程SYS用户登录时报:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务   
     此时检查 $ORACLE_HOME/network/admin/  目录下的listener.ora 文件,根据以下内容进行修改即可。
 
 
     修改完成后,需要重启下lsnrctl 服务:lsnrctl reload
 
第二种情况:初始化参数 remote_login_passwordfile 设置为 NONE
sqlnet.ora 中为默认设置,即:NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
 
此时,远程SYS用户无法登录。
 
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,