Oracle 12c中sysadm用户仅能以SYSDBA身份登录问题求助
解决Oracle 12c中用户仅能通过SYSDBA身份登录的问题
这种情况我之前处理过好几次,核心原因大概率是你的sysadm用户被配置为仅允许以SYSDBA身份登录,而非支持普通的密码认证。咱们一步步来排查和修复:
1. 确认用户的认证类型
先以SYSDBA身份登录数据库,执行以下查询查看用户的认证属性:
SELECT username, authentication_type FROM dba_users WHERE username = 'SYSADM';
如果返回的authentication_type值是SYSDBA,那就能确定是这个配置导致的普通登录失败。
2. 修改用户的认证方式
在同一个SYSDBA会话中,执行ALTER USER命令重置用户的认证方式为普通密码登录:
ALTER USER sysadm IDENTIFIED BY 你的实际密码;
注意:这里需要替换成
sysadm用户的真实密码,执行该命令要求当前登录账号拥有ALTER USER权限(通常DBA角色就具备)。
3. 验证修复结果
退出当前SQL*Plus会话,尝试用普通方式登录:
sqlplus sysadm/你的实际密码
这时候应该就能正常连接到数据库了。
额外排查点(如果上述操作无效)
如果还是无法普通登录,可以检查用户的账号状态是否正常:
SELECT username, account_status FROM dba_users WHERE username = 'SYSADM';
确保account_status的值是OPEN,如果是锁定状态,需要先解锁用户:
ALTER USER sysadm ACCOUNT UNLOCK;
内容的提问来源于stack exchange,提问作者Michael W.
相关产品推荐
相关产品推荐

