oralce orapwd创建口令文件

简介: oracle 口令文件的创建和使用


   使用sys用户已sysdba身份登陆数据库时,如果是在数据库本地登陆,则不必使用口令文件,如果需要以dba身份远程登陆数据库,则必须配置口令文件,而且数据库配置参数remote_login_passwordfile值不能为none。在使用orapwd创建密码文件后是否立即生效,网络上有说需要重启数据库才能生效,也有说不需要的,做个实验验证一下。

1 检查数据库配置参数,不能为none
     

SQL> show parameter pass

NAME TYPE VALUE


remote_login_passwordfile string EXCLUSIVE
这里的参数是EXCLUSIVE,符合远程登录的条件

2 检查ORACLE_HOME/dbs目录下没有口令文件
[oracle@orclserv1 dbs]$ pwd
/u01/app/oracle/product/11.2.0/db_1/dbs
已经进入到ORACLE_HOME/dbs目录下
[oracle@orclserv1 dbs]$ ls -l
total 16
-rw-rw----. 1 oracle oinstall 1544 Jul 20 19:59 hc_orcl11g.dat
-rw-r--r--. 1 oracle oinstall 2851 May 15 2009 init.ora
-rw-r-----. 1 oracle oinstall 24 Jun 22 22:20 lkORCL11G
-rw-r-----. 1 oracle oinstall 2560 Jul 20 20:00 spfileorcl11g.ora
可以看到这个目录下没有口令文件
3 使用sys用户以连接字符串形式登陆数据库
[oracle@orclserv1 admin]$ sqlplus sys/sys123@orcl11g as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sat Jul 20 20:04:26 2019

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

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

数据库里设置的sys密码是sys123,可以看到,虽然我们输入的密码是正确的,登陆依然被拒绝,显示无效的用户名和密码

4 在dbs目录下使用orapwd命令创建密码文件,oracle对密码文件的命名有要求,在创建密码文件时一定要符合密码文件的命名要求,否则,创建的密码文件无法被应用,具体的要求技术文件名为orapw$实例名,密码设置为现有sys密码
[oracle@orclserv1 dbs]$ orapwd file=orapworcl11g password=sys123
创建密码后在查看一下当前目录的内容,可以看到,当前目录下已经有了一个名字为orapworcl11g的文件,orcl11g是数据库实例名。
[oracle@orclserv1 dbs]$ ls
hc_orcl11g.dat init.ora lkORCL11G orapworcl11g spfileorcl11g.ora
5 再次登陆数据库
[oracle@orclserv1 dbs]$ sqlplus sys/sys123@orcl11g as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sat Jul 20 20:27:51 2019

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

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

数据库不必重启,已经能够登陆。

6 删除创建的密码文件,重新创建密码文件,这次密码不使用原来的sys密码
创建sys密码文件时,如果不使用当前数据库的sys密码会怎样的,还是实验一下看看吧,删除掉原来的sys密码文件,重新创建一个,密码改为root123
[oracle@orclserv1 dbs]$ orapwd file=orapworcl11g password=root123
[oracle@orclserv1 dbs]$ ls -l
total 20
-rw-rw----. 1 oracle oinstall 1544 Jul 20 20:22 hc_orcl11g.dat
-rw-r--r--. 1 oracle oinstall 2851 May 15 2009 init.ora
-rw-r-----. 1 oracle oinstall 24 Jun 22 22:20 lkORCL11G
-rw-r-----. 1 oracle oinstall 1536 Jul 20 20:31 orapworcl11g
-rw-r-----. 1 oracle oinstall 2560 Jul 20 20:23 spfileorcl11g.ora
从目录的内容来看,密码文件已经创建,使用新的密码登录一下数据库看看:
[oracle@orclserv1 dbs]$ sqlplus sys/root123@orcl11g as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sat Jul 20 20:32:10 2019

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

Connected to:
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进行远程登录,就要使用密码文件里的密码了。

7 结论
     使用orapwd创建密码文件时,不必重启数据库,即可使用新密码以sysdba身份远程登陆数据库,且新密码可以不同于原来的sys密码。在忘记sys密码时,一种可行的方法是以操作系统方式登陆数据库,用alter user命令重新设置密码,也可以可以使用orapwd命令重置sys密码,这两种fang

相关文章
|
数据安全/隐私保护 安全
|
Oracle 关系型数据库 数据库
oracle学习8-使用profile管理用户口令
oracle学习8-使用profile管理用户口令
149 0
|
Oracle 关系型数据库 数据安全/隐私保护
oracle学习25-手工删除oracle归档日志后操作步骤 和修改用户默认解锁时间
oracle学习25-手工删除oracle归档日志后操作步骤 和修改用户默认解锁时间
160 0
|
Oracle 关系型数据库
[20180316]改变oracle用户口令时限.txt
[20180316]改变oracle用户口令时限.txt --//昨天看了一篇blog,Stop password for user accounts expiring on Exadata,链接: --//https://blog.
1075 0
|
SQL 数据安全/隐私保护
[20171214]慎用toad保存口令功能.txt
[20171214]慎用toad保存口令功能.txt --//toad 11,12版本可以保存用户的登录口令.这样在维护管理时无需再需要口令. --//但是有一个简单的方法暴露登录口令.
1095 0
|
SQL Oracle 关系型数据库
【密码文件】Oracle OS认证与密码文件(口令文件)认证--密码文件介绍
【密码文件】Oracle OS认证与密码文件(口令文件)认证 1.1  密码文件 1.1.1  密码文件简介 作用:主要进行SYSDBA和SYSOPER权限的身份认证。
5389 0
|
安全 Oracle 关系型数据库
|
安全 Oracle 关系型数据库
[20171101]修改oracle口令安全问题.txt
[20171101]修改oracle口令安全问题.txt --//等保的问题,做一些关于修改oracle口令方面的测试. 1.oracle修改口令一般如下方式: alter user scott identified by oracle; password scott 第三方工具,通常也是执行以上类似的命令.
1237 0