ORA-01994: GRANT 失败: 口令文件缺失或已禁用问题解决方法

要给某个用户赋权限时发生的错误:

 代码如下 复制代码
sys@ORCL>grant sysdba to sys;
grant sysdba to sys

*
ERROR at line 1:
ORA-01994: GRANT 失败: 口令文件缺失或已禁用

 代码如下 复制代码

sys@ORCL>show parameters pass

NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
remote_login_passwordfile            string                            EXCLUSIVE
sys@ORCL>SQL> !ls -l $ORACLE_HOME/dbs
total 52
-rw-rw—- 1 oracle oinstall  1552 Sep 21 15:46 hc_dbsid.dat
-rw-r—– 1 oracle oinstall 12920 May  3  2001 initdw.ora
-rw-r—– 1 oracle oinstall  8385 Sep 11  1998 init.ora
-rw-r—– 1 oracle oinstall    24 Jul 21  2009 lkDBSID
-rw-r—– 1 oracle oinstall  2560 Sep 21 16:26 orapwDBSID
-rw-r—– 1 oracle oinstall 10752 Sep 21 15:11 spfileDBSID.ora

可以看到口令文件时存在的,可是怎么会发生 ORA-01994呢!!

遍寻不见结果,想起来,当初创建口令文件的时候,采用的是:

 代码如下 复制代码

orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID entries=10 force=y

而 $ORACLE_SID=DBSID

生成的是 orapwDBSID 文件。在linux系统上,文件区分大小写的!!

 代码如下 复制代码

SQL> !mv orapwDBSID orapwdbsid

sys@ORCL>r
  1* select * from v$pwfile_users

USERNAME     SYSDBA          SYSOPER         SYSASM
------------ --------------- --------------- ---------------
SYS          TRUE            TRUE            FALSE

时间: 2024-10-14 10:51:53

ORA-01994: GRANT 失败: 口令文件缺失或已禁用问题解决方法的相关文章

PHP session文件独占锁引起阻塞问题解决方法

  这篇文章主要介绍了PHP session文件独占锁引起阻塞,本文讲解PHP使用默认文件会话处理器时容易导致的阻塞问题解决方法,需要的朋友可以参考下 PHP默认的会话处理器是session.save_handler = files(即文件).如果同一个客户端同时并发发送多个请求(如ajax在页面同时发送多个请求),且脚本执行时间较长,就会导致session文件阻塞,影响性能.因为对于每个请求,PHP执行session_start(),就会取得文件独占锁,只有在该请求处理结束后,才会释放独占锁.

php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法

  在php命令行下执行.php文件时,执行环境的工作目录(getcwd( ))是php命令程序(php.exe)所在目录,所以如果想在文件内使用相对路径时,要先切换当前的工作目录才行. 小测试程序: 代码如下: $oldpath = getcwd(); // 原始工作目录 php.exe所在目录 $path = dirname(__FILE__); chdir($path); // 切换工作目录为当前文件所在目录 $fpath = "forum/readme.txt"; $fp =

关于找不到mss32.dll文件或无法定位的问题解决方法详细介绍

一:问题提出: 1.提问:我每次想玩游戏时.当打开快捷图标进去时.就会出现"无法定位程序输入点_AIL_find_filter@8于动态连接库mss32.dll上"请问老师该怎么解决? 谢谢! 2.搜索资料的时候发现百度知道的敏佳歌迷的提问:我装游戏的时候电脑说:mss32.dll找不到. 站长分析解决:  mss32 - mss32.dll - DLL文件信息 DLL 文件: mss32 或者 mss32.dll DLL 名称: Miles Sound System Library 描述: m

PHP session文件独占锁引起阻塞问题解决方法_php实例

PHP默认的会话处理器是session.save_handler = files(即文件).如果同一个客户端同时并发发送多个请求(如ajax在页面同时发送多个请求),且脚本执行时间较长,就会导致session文件阻塞,影响性能.因为对于每个请求,PHP执行session_start(),就会取得文件独占锁,只有在该请求处理结束后,才会释放独占锁.这样,同时多个请求就会引起阻塞.解决方案如下: (1)修改会话变量后,立即使用session_write_close()来保存会话数据并释放文件锁. s

【密码文件】Oracle OS认证与密码文件(口令文件)认证--密码文件介绍

[密码文件]Oracle OS认证与密码文件(口令文件)认证 1.1  密码文件 1.1.1  密码文件简介 作用:主要进行SYSDBA和SYSOPER权限的身份认证.密码文件存放着被授予SYSDBA或SYSOPER权限的用户的用户名和密码.它是一个加密的文件,用户不能修改这个文件,但是可以使用strings命令看到密码的HASH值. 在Linux系统中,密码文件一般保存在$ORACLE_HOME/dbs目录下,文件名为orapw$SID:在Windows系统中,密码文件一般保存在%ORACLE

oracle物理结构(五)口令文件

口令文件,即password file,用来对通过网络进行管理的用户进行认证. 1.本地连接 默认情况下,无论实例是否已启动,数据库服务器本地用户登录数据库需通过操作系统验证,即发 起登录的操作系统用户是否属于oinstall组,是则允 许登录,否则禁止,而与登录时使用的数据库用户及口令无关(错误的数据库用户及错误口令或空 口令均允许登录).注意, 操作系统验证仅对本地连 接且已as sysdba身份登录才生效,若非as sysdba身份,则进行数据库验证. [root@station31~]#

oracle的口令文件概述

os认证 oracle安装之后默认情况下是启用了服务器端os认证. 也就是将登录数据库的用户和口令校验放在了操作系统一级,你拥有了安装oracle时的用户操作系统的认证,默认也就拥有了sys用户的认证. 此时你以sysdba角色登陆的话是不用校验用户名和密码.以任何用户名和密码都能登陆成功. SQL> connect / as sysdba 已连接. SQL> connect sdfd/sds as sysdba 已连接. SQL> show user USER 为 "SYS&

电脑DLL文件缺失怎么办

  小知识:DLL文件的作用与好处 大家都知道,软件的主程序一般为EXE类型的可执行文件,直接双击它可以启动一个软件.但对DLL文件,知道的可能不如EXE多.DLL是一种"动态链接库"文件,它是一套程序的重要组成部分.在许多程序的开发中,由于需要调用相似或相同的功能,或由于功能繁多,开发时设计者会将功能相对独立或可以共享使用的部分单独设计成一个模块,于是,就将这些功能模块包装成一个动态链接库DLL文件.一个程序可以调用多个DLL,而多个程序又可以分享同一个DLL,管理起来就方便多了,同

r文件出错-R文件缺失求大神帮忙!!!

问题描述 R文件缺失求大神帮忙!!! 昨天还好好的今天的targetsdk就没了,导致R文件出错! 解决方案 重新选一下sdk不行吗