ORA-01264, ORA-19800 Permission denied

Error Description:
----------------------------------

Whenever you try to use Oracle Managed file systems while creating any objects like in this case tablespace it fails with error ORA-01264, ORA-19800 Permission denied. On Solaris the test is,
SQL> create tablespace tbs16k blocksize 16K;
create tablespace tbs16k blocksize 16K
*
ERROR at line 1:
ORA-01264: Unable to create datafile file name
ORA-19800: Unable to initialize Oracle Managed Destination
Solaris-AMD64 Error: 13: Permission denied

Or in linux the error stuck is,

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01264: Unable to create logfile file name
ORA-19800: Unable to initialize Oracle Managed Destination
Linux Error: 13: Permission denied

Cause of The problem:
-------------------------------------

The user don't have the permission to write in the specified location. This is Operating system permission.

Solution of The problem:
----------------------------------

Give the necessary permission to the user so that OS user who is running oracle can create file in the specified directory.
First Scenario:
------------------------------------------

In the first case, it is db_create_file_dest destination where create tablespace will try to create datafile.
We can see the location of db_create_file_dest by
SQL> show parameter db_create_file_dest

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest string /oradata2/shaik
So , now change permission of /oradata2/shaik to 777 or change the ownership.

Log on as root and chnage ownership by following.
-bash-3.00$ su
Password:
# chown -R oracle /backup1
# -bash-3.00$ logout

Now try to create tablespace and hopefully it will work fine.

Second Scenario:
--------------------------------
In the second scenario user don't have permission on flash recovery area.
You can see flash recovery area location by,
SQL> show parameter db_recovery

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /oracle
Now either change permission(chmod 777) or change ownership of the specified location by,
-bash-3.00$ su
Password:
# chown -R oracle /oracle
# -bash-3.00$ logout

Now try to do operation and hopefully it will work.

Comments

Popular posts from this blog

ORA-00923: FROM keyword not found where expected

How to make partitioning in Oracle more Quickly

Copy files between Unix and Windows with rcp