You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle 19c新建非SYSDBA用户登录报ORA-01017错误求助

ORA-01017 登录错误的排查与解决

核心排查与解决步骤

1. 操作系统认证优先级干扰

Oracle 19c中,若PDB的LOCAL_OS_AUTHENTICATION参数设为TRUE,会优先启用操作系统用户认证,覆盖普通密码认证逻辑,导致仅SYSDBA角色(依赖密码文件或操作系统DBA组认证)能登录,持CONNECT权限的普通用户无法通过密码验证。

操作步骤:

  • 以SYSDBA身份切换到目标PDB:
CONNECT / AS SYSDBA;
ALTER SESSION SET CONTAINER=orclpdb;
  • 查询并修改参数:
SHOW PARAMETER LOCAL_OS_AUTHENTICATION;
-- 若结果为TRUE,执行修改
ALTER SYSTEM SET LOCAL_OS_AUTHENTICATION=FALSE SCOPE=BOTH;
  • 重启PDB使配置生效:
ALTER PLUGGABLE DATABASE orclpdb CLOSE IMMEDIATE;
ALTER PLUGGABLE DATABASE orclpdb OPEN;

2. 用户归属与权限有效性验证

确认用户确实创建在目标PDB中,而非CDB根容器:

SELECT username, con_id FROM dba_users WHERE username='USER1';

若con_id不等于PDB的ID(可通过SELECT con_id, name FROM v$containers;查询),需在PDB中重新创建用户并授予权限:

CREATE USER USER1 IDENTIFIED BY PASSWORD;
GRANT CONNECT, RESOURCE TO USER1;

3. 密码大小写敏感性适配

若数据库SEC_CASE_SENSITIVE_LOGON参数为TRUE,需确保登录时密码严格匹配创建时的大写格式。部分客户端工具可能自动转换大小写,可尝试用引号包裹密码登录:

CONNECT USER1/"PASSWORD"@orclpdb;

4. 权限重新授予

重新执行权限授予命令,确保权限正确应用:

GRANT CONNECT TO USER1;

内容的提问来源于stack exchange,提问作者Manuch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 10:25:17