Tip of the Week
A few weeks ago, I did a tip called Free your SPFILE with Symbolic Links. In that tip, I covered moving the spfile out of $ORACLE_HOME/dbs onto a common shared disk in a clustered environment. For the failover in the cluster to be completely operational, we also had to move the password file. The password file, by default in the same directory named using the format orapwSID with SID being the database SID, is necessary for remote connections to be made using the SYSDBA or SYSOPER privilege. As we did with the spfile, we brought the database down, made a backup copy of the password file, moved the password file to the common shared disk, created the symbolic link, and brought the database back up.
In doing so, we received the error ORA-1991 in the alert log. Running the command oerr ora 1991 at the command line returns the information
01991, 00000, "invalid password file '%s'"
In looking at the files, we realized the permissions on the new file were not the same as the original file.
A search on MetaLink uncovered that this could be a permissions issue, and that the following command that would set the password file permissions correctly:
$chmod 4640 passwordfile
Once this command was executed against the new password, the database started without any problem
Without getting into great detail, the permissions 640 are being set on the password file. Normally when a file is executed, permissions are checked, but then the file executes under the permissions of the user who is executing the file. In this case, the 4 that precedes the 640 sequence, translates into set user ID on execution, meaning the password file executes under the permissions of the user who owns the file, in this case oracle, no matter who executes it.
Note: This tip was tested on Oracle9i. Thanks to Jason Cox, system administrator at ICON Clinical, for his research and sharing what he found.
Was this tip useful? Did you find any errors? Do you have any suggestions? Do you care? Click here for the tip feedback page. Thank you.
2000 Turnberry Circle, Glenmoore, PA 19343