1、错误提示情况
sys@CNMMBO> grant sysdba to scott;
grant sysdba to scott
*
ERROR at line 1:
ORA-01994: GRANT failed: password file missing or disabled
sys@CNMMBO> ho oerr ora 01994
01994, 00000, "GRANT failed: password file missing or disabled"
// *Cause: The operation failed either because the INIT.ORA parameter
// REMOTE_LOGIN_PASSWORDFILE was set to NONE or else because the
// password file was missing.
// *Action: Create the password file using the orapwd tool and set the
// INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE to EXCLUSIVE.
sys@CNMMBO> grant sysdba to scott;
grant sysdba to scott
*
ERROR at line 1:
ORA-01994: GRANT failed: password file missing or disabled
sys@CNMMBO> ho oerr ora 01994
01994, 00000, "GRANT failed: password file missing or disabled"
// *Cause: The operation failed either because the INIT.ORA parameter
// REMOTE_LOGIN_PASSWORDFILE was set to NONE or else because the
// password file was missing.
// *Action: Create the password file using the orapwd tool and set the
// INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE to EXCLUSIVE.
2、根据提示分析解决
sys@CNMMBO> show parameter remote_login -->查看参数remote_login_passwordfile的值已经是EXCLUSIVE
-->EXCLUSIVE表示登陆时要密码文件认证,且自己使用独占模式(此为默认值)
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
remote_login_passwordfile string EXCLUSIVE
sys@CNMMBO> ho ls $ORACLE_HOME/dbs/orapw* -->查看密码文件,有一个秘密文件存在,但非当前数据库
/users/oracle/OraHome10g/dbs/orapwCNBO1
sys@CNMMBO> ho orapwd file=$ORACLE_HOME/dbs/orapwCNMMBO password=oracle entries=10 -->使用orapwd重建当前数据库密码文件
sys@CNMMBO> ho ls $ORACLE_HOME/dbs/orapw*
/users/oracle/OraHome10g/dbs/orapwCNBO1 /users/oracle/OraHome10g/dbs/orapwCNMMBO
sys@CNMMBO> grant sysdba to scott; -->重建密码文件后再次授予sysdba权限成功
Grant succeeded.
sys@CNMMBO> show parameter remote_login -->查看参数remote_login_passwordfile的值已经是EXCLUSIVE
-->EXCLUSIVE表示登陆时要密码文件认证,且自己使用独占模式(此为默认值)
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
remote_login_passwordfile string EXCLUSIVE
sys@CNMMBO> ho ls $ORACLE_HOME/dbs/orapw* -->查看密码文件,有一个秘密文件存在,但非当前数据库
/users/oracle/OraHome10g/dbs/orapwCNBO1
sys@CNMMBO> ho orapwd file=$ORACLE_HOME/dbs/orapwCNMMBO password=oracle entries=10 -->使用orapwd重建当前数据库密码文件
sys@CNMMBO> ho ls $ORACLE_HOME/dbs/orapw*
/users/oracle/OraHome10g/dbs/orapwCNBO1 /users/oracle/OraHome10g/dbs/orapwCNMMBO
sys@CNMMBO> grant sysdba to scott; -->重建密码文件后再次授予sysdba权限成功
Grant succeeded.