RE: anyone have a package for creating objects in other schemas?
- From: "Bobak, Mark" <Mark.Bobak@xxxxxxxxxxxx>
- To: "Jay.Miller@xxxxxxxxxxxxxxxx" <Jay.Miller@xxxxxxxxxxxxxxxx>, "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
- Date: Wed, 29 Jul 2009 17:18:41 -0400
Hi Jay,
Perhaps I'm missing something, but I'm thinking you're making it more
complicated than it needs to be. (Or, perhaps I'm not clear on what
restrictions have been inflicted on you by damagement.)
The way we work here, DBAs have ownership of the application owner schema, even
in devel.
The way we work is something like this:
1.) DBA owns app owner schema. DBA creates public synonyms for all app
owner objects. Various login ids are created, and privileges are granted to
various tables and stored procs, according to requirements of that particular
user. This is true of all instances, devel, test, preprod, and prod.
2.) In development, developers are allowed their own login id. The
developer is granted select/insert/update/delete on all app owner tables and
execute on all app owner stored objects. The developer is granted full create
abilities in his own schema, but no create any privileges of any kind.
3.) Now, the developer develops by relying on the app owner objects, except
for in his little corner of the world, where he's currently working. Suppose
he's working on a new version of proc1. He creates proc1 in his schema, and
can do all his development and unit testing of proc1 right there in his schema.
Anything he doesn't have a copy of, public synonyms ensure he seems the
currently released object in the app owner schema.
4.) At the time of the preset deadline, "release to development", developers
provide DBAs all DDL to make changes to sync up the main application owner
schema with the changes they've been working on in their local schemas.
This way, developers can develop to their hearts content, do what they need to
in their own schema, etc, and aren't asking you (the DBA) to do this, make that
change, etc. At the predefined time, when the changes are to be officially
released into development, you (the DBA) make all the changes, based on scripts
they provide you.
This works pretty well for us, and avoids some of the issues you mention.
It's by no means perfect, but for a relatively small development team, it works
pretty well.
Hope that helps....and sorry if I missed your point.....
-Mark
From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On
Behalf Of Jay.Miller@xxxxxxxxxxxxxxxx
Sent: Wednesday, July 29, 2009 4:42 PM
To: oracle-l@xxxxxxxxxxxxx
Subject: anyone have a package for creating objects in other schemas?
Sigh.
The new company policy is that developers can neither have the password for
schemas nor have CREATE ANY xxx on development databases.
The only remaining option I see (other than having developers call me every 2
minutes to keep putting new iterations of code into dev) is to write a package
with procedures to create various types of objects which will be owned by the
schema and grant execute on it.
I thought it was worth asking if anyone knows of an already existing version of
such a script.
I also considered telling the manager who set the policy that he has to write
the script himself but decided that wasn't advisable :).
TIA,
Jay
Other related posts: