sqlplus / as sysdba登陆失败,(ORA-01017)

 周一上班检查alert log,看到某个库报出大量的错误 提示无法连接到ASM实例,这是某知名MES厂商DBA创建的11G RAC刚刚​转交到我手上的,这又是给我挖了什么坑?

报错为ORA-01017​用户名密码不对?​what?

登陆oracle 用户发现本机也无法直接以sqlplus / as sysdba登陆

登陆grid 也无法用sqlplus  /  as sysasm登陆?

难道关闭了​本地操作系统认证?先以sys用户名和密码登陆查看

remote_login_passwordfile参数为默认值EXCLUSIVE,也就是没有关闭本地操作系统认证​。

引申​:

Oracle登录验证方式包括口令验证和操作系统认证。 操作系统认证,就是Oracle认为操作系统用户是安全的,在使用sqlplus登录时,不校验用户密码,直接登录。 口令认证,就是指Oracle认为操作系统用户是不安全的,需要通过口令文件进行账号密码验证。Oracle的口令文件一般存放在$ORACLE_HOME/dba/目录下,名字为orapw+sid。Oracle通过初始化参数remote_login_passwordfile限制口令文件的使用,这里详细介绍下: 1)NONE remote_login_passwordfile=none表示,登录时禁用口令文件验证,sysdba用户只能通过操作系统认证登录数据库,其他方式的登录,比如PL/SQL,就会报前面提到的ORA-01017错误。操作系统认证方式涉及sqlnet.ora($ORACLE_HOME/network/admin目录下)中的参数SQLNET.AUTHENTICATION_SERVICES: a) NONE:关闭操作系统认证,只能通过口令文件认证;---- b) ALL: linux/unix平台下,采用操作系统认证,但远程sysdba登录仍然需要口令文件认证。 c) NTS: windows平台下操作系统认证。 2) EXCLUSIVE remote_login_passwordfile=exclusive表示,独占模式使用口令文件,这个是默认值,用在单数据库的单实例环境中。这种模式下,可以对sysdba用户进行增加、修改、删除,同时可以修改sysdba用户密码,记录到密码文件中。 查看被授予sysdba权限的用户:

SELECT USERNAME FROM V$PWFILE_USERS WHERE SYSDBA='TRUE';

3) SHARED 这种模式下,可以在多个数据库间共享使用口令文件,口令文件不可被修改,包括不能修改sys用户密码。Oracle建议首先将需要sysdba权限的用户在excusive模式下设置好,然后修改remote_login_passwordfile修改为shared共享口令文件。 修改方法:

alter system set remote_login_passwordfile=shared scope=spfile;

静态参数 需要重启数据库生效。 通常linux直接sqlplus / as sysdba 无法登陆一般都是因为修改了remote_login_passwordfile参数导致,但是此处明显不是的。

继续按alert log的报错查看mos,发现有这么一篇文档

ORA-01017: invalid username/password; logon denied WARNING: ASM communication error: op 18 state 0x40 (1017) (Doc ID 2292526.1)

文档提示 当对oracle/grid添加到新的group时 由于dba组比asmdba组靠前会导致这个报错,上周确实因为无法su 将oracle/grid 添加到wheel组(这到底给我挖了多少坑?)

检查 oracle/grid的用户属性

​WTF?只有一个oinstall组,dba asmdba​等等根本都没有?怪不得本地无法登陆!原因找到了解决就很简单了,将oracle/grid缺失的组都加上

 usermod -g oinstall -G asmdba,dba,oper oracle usermod -g oinstall -G asmadmin,asmdba,asmoper,dba,oper grid 检查用户组cat /etc/groupoinstall:x:1003:asmadmin:x:1200:gridasmdba:x:1201:oracle,gridasmoper:x:1202:griddba:x:1300:oracle,gridoper:x:1301:oracle,grid

修改后确认 oracle/grid 可以正常登陆

本文涉及到的知识点

  1. 本地登陆认证相关参数remote_login_passwordfile

  2.  grid新加用户组时 asmdba组需要放在dba组前

参考文档
ORA-01017: invalid username/password; logon denied WARNING: ASM communication error: op 18 state 0x40 (1017) (Doc ID 2292526.1)

​https://www.cnblogs.com/yutianqi/p/4967777.html

相关推荐

  1. 笔记:12.1 使用sqlplus /as sysdba登录报错ORA-01017

    2024-04-23 08:32:02       22 阅读
  2. ubuntu root登陆桌面及ssh失败

    2024-04-23 08:32:02       22 阅读
  3. PLSQL登录提示ora_12541无法识别连接符报错

    2024-04-23 08:32:02       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-23 08:32:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-23 08:32:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-23 08:32:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-23 08:32:02       20 阅读

热门阅读

  1. vue 实现级联选择器功能

    2024-04-23 08:32:02       15 阅读
  2. UML类图

    UML类图

    2024-04-23 08:32:02      13 阅读
  3. AWS清除CloudFront缓存

    2024-04-23 08:32:02       13 阅读
  4. 维护网络安全的途径有哪些?

    2024-04-23 08:32:02       17 阅读
  5. axios 实现上传、下载

    2024-04-23 08:32:02       13 阅读
  6. 一键展开或折叠树形表格

    2024-04-23 08:32:02       14 阅读
  7. 【设计模式】11、flyweight 享元模式

    2024-04-23 08:32:02       13 阅读
  8. 【Python-正则表达式】

    2024-04-23 08:32:02       11 阅读
  9. tomcat更换应用目录

    2024-04-23 08:32:02       17 阅读
  10. 浅谈架构方法之时间片轮询

    2024-04-23 08:32:02       11 阅读
  11. openGauss概述

    2024-04-23 08:32:02       17 阅读
  12. 【重学C语言】九、函数

    2024-04-23 08:32:02       17 阅读
  13. internet.getUserEncryptKey提示错误

    2024-04-23 08:32:02       13 阅读
  14. 从零开始:UniApp 项目搭建指南

    2024-04-23 08:32:02       16 阅读
  15. uniapp picker组件实现二级联动

    2024-04-23 08:32:02       16 阅读