Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

ORA-01031: insufficient privileges

Posted on 2006-11-21
8
Medium Priority
?
10,321 Views
Last Modified: 2008-01-09
Hi,

I've recently installed Oracle10g and I'm testing some of our App DBA scripts but I'm running into "Insufficient Privileges" errors.  In Oracle8i and 9i, I granted our schema owner the following privs:

grant connect to schema_owner;
grant unlimited tablespace to schema_owner;
grant create any trigger to schema_owner;
grant create any procedure to schema_owner;
grant create public database link to schema_owner;
grant drop public database link to schema_owner;
grant create public synonym to schema_owner;
grant drop public synonym to schema_owner;
grant create role to schema_owner;
grant drop any role to schema_owner;

With these grants, specifically the unlimited tablespace, I was able to create any database object as the schema_owner…..sequences, tables, indexes, procs, funcs, trigs, etc.  Besides granting the schema_owner everything under the sun, is there a role in Oracle10g that applies to schema owners ?  Any best practices ?

Thanks,
Frank
0
Comment
Question by:timboc
7 Comments
 
LVL 29

Expert Comment

by:MikeOM_DBA
ID: 17990391

Grant RESOURCE to Schema_Owner;
0
 

Author Comment

by:timboc
ID: 17990821
Hi Mike,

My schema owner also needs to create jobs.  For Oracle10g, I noticed the role scheduler_admin.   The other important thing is that I need to ensure that these scripts will continue to work in Oracle8i and 9i.

Thanks,
Frank
0
 
LVL 29

Accepted Solution

by:
MikeOM_DBA earned 172 total points
ID: 17991292

There is no scheduler in 8i and 9i, but you could create a scheduler_admin role with 'CREATE ANY JOB' privilege in these versions.

-- OR --

Temporarily GRANT DBA privilege and after installation revoke DBA.





0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 28

Assisted Solution

by:Naveen Kumar
Naveen Kumar earned 164 total points
ID: 17994325
You many want this to give

grant SELECT ANY DICTIONARY to Schema_Owner; because somewhere down the line you may need it because some of your scripts might be trying some data dictionary view of SYS.

Thanks
0
 
LVL 28

Expert Comment

by:Naveen Kumar
ID: 17994341
you may also want to try :

SELECT_CATALOG_ROLE
EXECUTE_CATALOG_ROLE
DELETE_CATALOG_ROLE

Search for the above words in the below URL:

http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96521/privs.htm#14881

Thanks

0
 
LVL 2

Assisted Solution

by:sunnypoint
sunnypoint earned 164 total points
ID: 18056265
grant create role to schema_owner;
This is not enough.

Try this:
grant create table to schema_owner;
This must be granted from sys schema

If this works for you, I'll explain it.
0
 
LVL 1

Expert Comment

by:Computer101
ID: 20296257
Forced accept.

Computer101
EE Admin
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Note: this article covers simple compression. Oracle introduced in version 11g release 2 a new feature called Advanced Compression which is not covered here. General principle of Oracle compression Oracle compression is a way of reducing the d…
Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and the…
This video shows how to Export data from an Oracle database using the Datapump Export Utility.  The corresponding Datapump Import utility is also discussed and demonstrated.
This videos aims to give the viewer a basic demonstration of how a user can query current session information by using the SYS_CONTEXT function
Suggested Courses

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question