一个低级的ORA-01017错误

一个低级的ORA-01017错误事件缘由:使用sys账户创建了一个数据清理的存储过程,再创建一个Oraclejob定时运行这个存储过程,用于做表数据的清理。第二天看表数据未删除,说明job执行有错,打算使用sys账号登录查看job运行情况,反复输入sys账户信息,总提示ORA-01017,1.尝试改sys用户密码,重试报错依旧。2.使用sys登录GC,报错相同。使用普通用户登录正常。3.数据库服务器上使用sq

大家好,又见面了,我是你们的朋友全栈君。

事件缘由
使用sys账户创建了一个数据清理的存储过程,再创建一个Oracle job定时运行这个存储过程,用于做表数据的清理。第二天看表数据未删除,说明job执行有错,打算使用sys账号登录查看job运行情况,反复输入sys账户信息,总提示ORA-01017,
这里写图片描述
1.尝试改sys用户密码,重试报错依旧。
2.使用sys登录GC,报错相同。使用普通用户登录正常。
3.数据库服务器上使用sqlplus sys/oracle@dep182 as sysdba登录正常。

问题排查和原因
根据以上信息,可能有朋友已经基本了解为何有这种现象了。

1.上述问题反映的现象是远程使用sys账户无法登录,数据库服务器本地使用TNS方式连接正常,首先排除密码错误。

2.查看$ORACLE_HOME/dbs,存在密码文件orapwDEP,为了保险起见,备份旧的密码文件后,重建了密码文件,问题依旧。

3.查询v$pwfile_users表记录,发现是空,
这里写图片描述

关于v$pwfile_users的描述:

V$PWFILE_USERS lists all users in the password file, and indicates whether the user has been granted the SYSDBA, SYSOPER, and SYSASM privileges.

奇怪了,明明有密码文件,为什么这显示的记录是空?

4.回头再来看密码文件,Linux下密码文件的命名格式是orapw$ORACLE_SID,已存的文件名是orapwDEP,再看下ORACLE_SID:
这里写图片描述
我勒个去,ORACLE_SID是小写的dep,但文件却使用了大写,低级的错误。

接下来就比较简单了,重建密码文件:

orapwd file=orapwdep password=oracle entries=30

无论是远程,还是GC,都可以正常登录了。
这里写图片描述

总结
1.Oracle中有不少大小写敏感的参数设置,一定要仔细,否则就会产生各种困扰。
2.Oracle的密码文件实际定义了拥有sysdba等权限用户的列表,因此远程使用普通用户访问就不会受到密码文件的限制。
3.密码文件和v$pwfile_users两者关系,可以参考惜纷飞的这篇博文,使用各种实验说明了两者的关联。
xifenfei.com/2011/12/vpwfile_users和密码文件关系.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138068.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月1日 上午6:36
下一篇 2022年6月1日 上午6:36


相关推荐

  • oracle导入dmp文件 linux,Linux下Oracle导入dmp文件

    oracle导入dmp文件 linux,Linux下Oracle导入dmp文件Linux 下向 oracle 数据库倒入 dmp 包的方式 1 登录 linux 以 oracle 用户登录 如果是 root 用户登录的 登录后用 su oracle 命令切换成 oracle 用户 2 以 sysdba 方式来打开 sqlplus 命令如下 sqlplus assysdba 3 查看常规将用户表空间放置位置 执行如下 sql selectnamefr datafile 上边的 sql 一般

    2026年3月16日
    2
  • 上传图片ajax返回400,七牛qiu.js 上传图片 400报错

    上传图片ajax返回400,七牛qiu.js 上传图片 400报错http提示信息RequestURL:http://upload.qiniu.com/RequestMethod:POSTStatusCode:400BadRequestRemoteAddress:115.231.182.136:80ResponseHeadersviewsourceAccess-Control-Allow-Headers:X-File-Name,X-File-…

    2022年5月2日
    49
  • 监控录像数据恢复方法步骤详解

    监控录像数据恢复方法步骤详解在人们生活日益改善的今天,社会的和谐安定成为了最为重要的一个问题。一些不法分子为了一己私利,通过不法手段谋取他人的财物。这样的行为对社会对个人都是一种威胁,为了能更好的防治这类社会危害因素,那就需要我们的电子警察——视频监控出马了。视频监控在现在生活中随处可见,道路上有治安监控,各家商铺有防盗监控,随处可见的监控给人们的生命财产安全带来了一份保障。利用安全防范技术进行安全防范首先对犯罪分子

    2022年5月4日
    277
  • OpenCV繪圖的實作-cvCircle,cvEllipse,cvEllipseBox

    OpenCV繪圖的實作-cvCircle,cvEllipse,cvEllipseBox转自:http://www.90in.net/space-4-do-blog-id-10218.htmlOpenCV繪圖的實作-cvCircle,cvEllipse,cvEllipseBox圓的製作,要給他目標圖片,圓心座標,半徑,其他參數等.cvCircle()函式的實作#include<cv.h>#include<highgui.h>IplImag…

    2022年7月19日
    19
  • Soc芯片架构介绍「建议收藏」

    Soc芯片架构介绍「建议收藏」参考链接:https://www.bilibili.com/read/cv3347169/扩展:计算机架构(哈佛结构):参考链接:https://zhuanlan.zhihu.com/p/63322067

    2025年9月28日
    5
  • 进程控制块PCB

    进程控制块PCB我们知道 每个进程在内核中都有一个进程控制块 PCB 来维护进程相关的信息 Linux 内核的进程控制块是 task struct 结构体 usr src linux headers 3 16 0 30 include linux sched h 文件中可以查看 structtask struct 结构体定义 其内部成员有很多 我们重点掌握以下部分即可 进程 id 系统中每个进程有唯一的 id 在 C 语

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号