日期:2014-05-16  浏览次数:20547 次

Oracle数据库案例整理-登录Oracle数据库失败-Oracle初始化参数设置错误导致普通用户授予sysdba权限登录失败

1.1       现象描述

普通用户授予sysdba权限登录数据库失败,系统显示如下错误信息:

% sqlplus <username>/<password>@<connect_string> as sysdba

SQL*Plus: Release 11.1.0.7.0 - Production on Thu Nov 26 14:28:11 2009
 
Copyright (c) 1982, 2008, Oracle.  All rights reserved.
 
ERROR:
ORA-01017: invalid username/password; logon denied

但是以sysdba用户直接登录,系统提示如下信息:

% sqlplus / as sysdba

SQL*Plus: Release 11.1.0.7.0 - Production on Thu Nov 26 14:28:35 2009
 
Copyright (c) 1982, 2008, Oracle.  All rights reserved.
 
 
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, Real Application Clusters, Data Mining and Real Application Testing options

1.2       可能原因

Oracle初始化参数“REMOTE_LOGIN_PASSWORDFILE”设置为“NONE”,导致为普通用户授予SYSDBA权限登录失败。

1.3       定位思路

检查“REMOTE_LOGIN_PASSWORDFILE”的值。

SQL> show parameter password;

系统显示如下信息:

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_login_passwordfile            string      NONE

由查询结果可知:“REMOTE_LOGIN_PASSWORDFILE”的值为“NONE”。

1.4       处理步骤

  1. oracle用户登录主机节点。
  2. sysdba用户连接数据库。

% sqlplus / as sysdba

  1. 在主机节点通过spfile文件创建pfile文件。

SQL> create pfile='/oracle/app/admin/ora11g/pfile/inittest.ora' from spfile;

创建成功,系统提示如下信息:

File created.
  1. 修改新创建的pfile中的参数。
5.     <