If you have ever tried to change the SYS of a normal or ASM database instance Password, you would get errors as below :
SQL> password Changing password for SYS Old password: New password: Retype new password: ERROR: ORA-00600: internal error code, arguments: [15051], [], [], [], [], [], [], []
SQL> select INSTANCE_NAME from v$instance; INSTANCE_NAME ---------------- +ASM SQL> ALTER USER sys IDENTIFIED BY [new_password] REPLACE [old_password]; ALTER USER sys IDENTIFIED BY [new_password] REPLACE [old_password] * ERROR at line 1: ORA-01109: database not open
The following error also might occur:
SQL> alter user sys identified by ; alter user sys identified by * ERROR at line 1: ORA-01031: insufficient privileges
Solution
Recreate the password file as follows:
1. Set the ORACLE_HOME and ORACLE_SID
2. connect / as sysdba from sqlplus
3. If the value of the “remote_login_passwordfile” parameter in the pfile or spfile is EXCLUSIVE, you must shutdown your instance
4. RENAME or DELETE the existing password file orapw[SID]
5. Issue the command:
$ orapwd file=[ORACLE_HOME]/dbs/orapw[SID] password=[sys_password]
The passwordfile can be recreated for ASM while ASM instance is up. Usually, for normal DB instances, it is recommended that DB instances be shutdown before changing the passwordfile. In 11.2 you can use asmcmd to change the password for single instance environment as follows
$ export ORACLE_SID=+ASM $ asmcmd ASMCMD> passwd sys Enter old password (optional): ****** Enter new password: ******
In Cluster environment
ASMCMD> orapwusr --modify --password sys Enter password: ****** ASMCMD> exit