sqlplus / as sysdba登录数据库报错ora-01017解决办法

1.问题现象

sqlplus / as sysdba登录数据库报错ora-01017

2.问题排查解决过程

2.1 sqlplus sys/密码 as sysdba登录数据库,如果可以正常登录,只需要修改sqlnet.ora文件中的

SQLNET.AUTHENTICATION_SERVICES = (NTS)

2.2 如果忘记了管理员密码可以通过以下语句修改管理员默认密码

windows通过cmd窗口执行以下命令:

复制代码
orapwd file=D:\WINDOWS.X64_193000_db_home\database\PWDWMSDB.ora password=Passw0rd! entries=10 force=y

重启数据库后即可生效

3.理论知识补充

3.1.sqlplus有几种登陆方式

比如:

3.1.1C: > sqlplus "/as sysdba" --以操作系统权限认证的oracle sys管理员登陆

对应参数为REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE

3.1.2.C: > sqlplus /nolog --不在cmd或者terminal当中暴露密码的登陆方式 SQL> conn /as sysdba & SQL> conn sys/password as sysdba

3.1.3.C: > sqlplus scott/tiger --非管理员用户登陆

3.1.4.C: > sqlplus scott/tiger@orcl --非管理员用户使用tns别名登陆

3.1.5.C: > sqlplus sys/password@orcl as sysdba --管理员用户使用tns别名登陆

3.1.6.C: > sqlplus --不显露密码的登陆方式 Enter user-name:sys Enter password:password as sysdba --以sys用户登陆的话 必须要加上 as sysdba 子句

3.2 密码文件,是仅用来限制具有sysdba或者sysoper权限的用户以远程的方式连接数据库的密码校验文件。如果不存在密码文件或者密码文件丢失,那么以sysdba或者sysoper权限的用户将无法登陆并返回错误:ERROR:

ORA-01031: insufficient privileges

3.3 REMOTE_LOGIN_PASSWORDFILE参数是对密码文件使用的限定,下面就对REMOTE_LOGIN_PASSWORDFILE参数的各项参数进行探讨

REMOTE_LOGIN_PASSWORDFILE = NONE

当REMOTE_LOGIN_PASSWORDFILE参数为NONE时,密码文件被禁用,用户无法以管理员级别用户远程登录到数据库

REMOTE_LOGIN_PASSWORDFILE =EXCLUSIVE是默认值。

相关推荐
2601_957084841 分钟前
2026年生产型服装供应链SCM系统丨水洗参数、产能与验收节点架构
数据库·scm·服装供应链系统·服装scm·服装供应链
IvorySQL5 小时前
PostgreSQL 日报|恢复期 COPY TO 未日志表修复(10 月 21 日)
数据库·postgresql·区块链
贝猫说python7 小时前
大模型比赛2.3智能体开发(工具调用智能问答助手)
数据库·oracle
许彰午8 小时前
28-ORA-01110数据文件读取错误
数据库·oracle
凯凯姜8 小时前
MySQL 联合索引设计与索引失效
数据库·mysql
猫咪很可爱9 小时前
Oracle TEMP 表空间不足(ORA-01652)问题分析与优化实践
数据库·oracle
九零HTTP10 小时前
10月21号-CSDN配菜-IP池的5个坑
服务器·数据库·tcp/ip
Data-Miner10 小时前
需要做财务数据分析,有什么好用的工具?从准备到出报告的实操指南
大数据·数据库·数据分析
袋鼠云数栈11 小时前
让 SQL 解析不再重复造轮子:SqlParserX 正式开源
数据库·人工智能·sql·开源·数据治理
这个DBA有点耶11 小时前
期货 CTP 系统 Oracle RAC 迁移国产库实战:读写分离架构设计与性能对标
数据库·架构·dba