Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

PLS-00201: identifier 'DBMS_SHARED_POOL.UNKEEP' must be declared

cayenneMar 4 2010 — edited Mar 5 2010
Hello all,

I've recently performed a datapump export of a database from a 10G instance into a 11G instance. Pretty much everything went well, only had a couple of errors.

I had one procedure that wouldn't compile. I found that on that one, I had to:
grant execute on dbms_lock to schema1;

That fixed that one and it compiled.

I've got another error, a package body for schema2 that won't compile

When I try to compile it, I get a number of these errors:
Line # = 34 Column # = 7 Error Text = PLS-00201: identifier 'DBMS_SHARED_POOL.KEEP' must be declared
Line # = 34 Column # = 7 Error Text = PL/SQL: Statement ignored

I tried granting execute as sys to the schema2

grant execute on DBMS_SHARED_POOL to schema2;

That grant succeeds, however, when I try to compile the package body...it still fails as listed above.

I read on different threads, that possibly I needed to run the dbmspool.sql script...I did, it ran just fine.

Still, no compile on the package.

Strange thing is...the package body for this package compiles just fine.

Any ideas what's going on here?

Thanks in advance,

cayenne
This post has been answered by sb92075 on Mar 4 2010
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 2 2010
Added on Mar 4 2010
3 comments
2,676 views