--------------------------------
orcl
windows上是(administrator或安装oracle时候使用的用户),域用户没有连上域服务器时就可能出现这种现象;linux、unix上root或安装oracle的授权账户
SQL> select * from v$pwfile_users;
USERNAME SYSDBA SYSOPER
------------------------------------------------------------ ---------- --------- SYS TRUE TRUE 如果返回空,则SYS无dba权限
SQL> grant sysdba to sys;
grant sysdba to sys * ERROR at line 1: ORA-01994: GRANT failed: password file missing or disabled 此次应重建或修改密码文件,详见第(4)步
V$PWFILE_USERS
这个视图列出从口令文件中导出的授予SYSDBA和SYSOPER权限的用户。
列 数据类型 说明
USERNAME
VARCHAR2(30)
包含在口令文件中的用户名
SYSDBA
VARCHAR2(5)
如果此列的值为TURE,则该用户可利用SYSDBA权限进行连接
SYSOPER
VARCHAR2(5)
如果此列的值为TURE,则该用户可利用SYSOPER权限进行连接 |
SQL> show parameter password
NAME TYPE
------------------------------------ ---------------------- VALUE ------------------------------ remote_login_passwordfile string EXCLUSIVE #---------如果不是运行
SQL>alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;
#/*-------------------------
REMOTE_LOGIN_PASSWORDFILE= {NONE | SHARED} Values:
Note:
The value
EXCLUSIVE is supported for backward compatibility. It now has the same behavior as the value SHARED . #-----------------------*/ |
oswong entries=10
------------------------------ ----- -----
SYS TRUE TRUE
------------------------------------ ----------------------
VALUE
------------------------------
max_enabled_roles integer
30
os_roles boolean
FALSE
remote_os_roles boolean
FALSE
SQL>
------------------------------------ ----------------------
VALUE
------------------------------
max_enabled_roles integer
30
SQL>
alter system set max_enabled_roles=500 scope=spfile
*
ERROR 位于第 1 行:
ORA-00068: 值 500 对参数 max_enabled_roles 无效,必须在 1 和 148 之间
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Fixed Size 453512 bytes
Variable Size 113246208 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
------------------------------------ ----------------------
VALUE
------------------------------
max_enabled_roles integer
148
os_roles boolean
FALSE
remote_os_roles boolean
FALSE