我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle 密码文件与用户密码的关系

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle 密码文件与用户密码的关系

今天一位同事接到一项任务是修改数据库SYS和SYSTEM用户的密码,老大在布置任务的时候还带了一句别忘了同步密码文件,于是想到了自己前几天写的一篇博客介绍Oracle密码文件的,当时只是写了如何创建密码文件,如何远程使用SYSDBA登录数据库做操作,但是并没有提到密码文件中用户的密码跟数据库中用户的密码是否有关系。

下面来测试一下,我用的平台是11.2.0.4

首先修改SYS的密码

sys@ORCL>alter user sys identified by zhaoxu;

User altered.
--由于11g里dba_user视图里的password是空值,所以选择user$视图
sys@ORCL>select password from user$ where name='SYS';

PASSWORD
------------------------------------------------------------------------------------------
C53B64BC84353309
--建议remote_login_passwordfile需要为EXCLUSIVE
sys@ORCL>show parameter remote_login_passwordfile

NAME				     TYPE			       VALUE
------------------------------------ --------------------------------- ------------------------------
remote_login_passwordfile	     string			       EXCLUSIVE

创建一个密码文件然后测试远程登录

#创建一个与SYS用户密码相同的密码文件
[oracle@rhel6 dbs]$ cd $ORACLE_HOME/dbs
[oracle@rhel6 dbs]$ orapwd file=orapworcl entries=3 password=zhaoxu
[oracle@rhel6 dbs]$ ls -l orapworcl 
-rw-r----- 1 oracle oinstall 1536 Dec 26 21:32 orapworcl
#测试连接成功
[c:\~]$ sqlplus sys/zhaoxu@192.168.56.2/orcl as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期一 12月 26 21:34:22 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


连接到: 
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select password from user$ where name='SYS';

PASSWORD
------------------------------------------------------------
C53B64BC84353309
#密码的HASH值没有变化

#创建一个与SYS密码不同的密码文件
[oracle@rhel6 dbs]$ orapwd file=orapworcl entries=3 password=luoxi force=y
[oracle@rhel6 dbs]$ ls -l orapworcl 
-rw-r----- 1 oracle oinstall 1536 Dec 26 21:36 orapworcl
#测试连接,使用原密码文件的密码登录不成功,使用新密码文件的密码登录成功,但是SYS用户的密码HASH值仍没有变
[c:\~]$ sqlplus sys/zhaoxu@192.168.56.2/orcl as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期一 12月 26 21:36:20 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:
ORA-01017: invalid username/password; logon denied


[c:\~]$ sqlplus sys/luoxi@192.168.56.2/orcl as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期一 12月 26 21:36:30 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


连接到: 
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select password from user$ where name='SYS';

PASSWORD
------------------------------------------------------------
C53B64BC84353309

测试直接修改SYS用户密码,查看密码文件会有什么变化

#修改SYS密码成功,密码HASH值与之前不同
sys@ORCL>alter user sys identified by oracle;

User altered.

sys@ORCL>select password from user$ where name='SYS';

PASSWORD
------------------------------------------------------------------------------------------
8A8F025737A9097A
#查看密码文件,在修改SYS密码时密码文件也有更新
[oracle@rhel6 dbs]$ ls -l orapworcl 
-rw-r----- 1 oracle oinstall 1536 Dec 26 21:39 orapworcl
#测试远程登录,使用luoxi密码已不能登录数据库,但修改的SYS密码可以登录数据库
[c:\~]$ sqlplus sys/luoxi@192.168.56.2/orcl as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期一 12月 26 21:41:50 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:
ORA-01017: invalid username/password; logon denied


[c:\~]$ sqlplus sys/oracle@192.168.56.2/orcl as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on 星期一 12月 26 21:41:58 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


连接到: 
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

总结一下:修改SYS密码时,会同时修改密码文件中的密码,保持一致;如果是手工创建的密码文件,密码文件中的密码可以与SYS密码相同也可以不同,都不影响远程登录。不过还是建议全SYS密码与密码文件中的密码一致,以免需要急用远程登录时密码反而不对,造成维护上的问题。

查询MOS上也有相关的文档:Password or SYS Doesn't Match the Hash Value in USER$ (文档 ID 2139304.1)

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle 密码文件与用户密码的关系

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python编程密码学文件加密与解密的方法

本文小编为大家详细介绍“Python编程密码学文件加密与解密的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python编程密码学文件加密与解密的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。本章要点o
2023-06-30

linux用户密码存放的文件是什么

今天小编给大家分享一下linux用户密码存放的文件是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
2023-03-06

oracle 用户解锁和修改用户密码

1.安装教程参看:https://jingyan.baidu.com/article/3c48dd34be2a32e10be35881.html 2.用户解锁   运行cmd   输入sqlplus / as sysdba 后回车,以超级管理员身份登录   输

	oracle 用户解锁和修改用户密码
2017-09-27

Linux系统怎么查看用户密码及修改密码

这篇文章将为大家详细讲解有关Linux系统怎么查看用户密码及修改密码,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Linux系统是一个多用户系统,所以系统中储存着多个不同账户,但是有些记性不
2023-06-28

plsql怎么修改oracle用户密码

要修改Oracle用户密码,可以使用以下PL/SQL代码:```plsqlALTER USER 用户名 IDENTIFIED BY 新密码;```请将上述代码中的“用户名”替换为要修改密码的Oracle用户的实际用户名,将“新密码”替换为要
2023-08-18

编程热搜

目录