Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: DBA for Application

Re: DBA for Application

From: Jonathan Gennick <gennick_at_worldnet.att.net>
Date: Thu, 04 Jun 1998 00:58:41 GMT
Message-ID: <6l4rg3$1n@bgtnsc02.worldnet.att.net>


I also work as a DBA for development team. We have maybe 14 developers, testers, and analysts (I lose count). Here is how I have things setup:

  1. Two instances (not tablespaces), one for developers and another for testers. Actually, we have more. There are two developers using Personal Oracle, two special-use instances for specific types of testing, and our client's test and production instances.
  2. Each developer has their own user-id on the development instance, with the ability to create their own tables if they like. None of our developers do this.
  3. There is a seperate user that holds all the tables for the project. No one develops using this user-id, but all developers know the password and can log onto it. All developers share this one set of tables.
  4. Developers have a lot of latitude on the development database. If they need tables modified, indexes created, constraints, etc they have two choices. They can email me, or they can do it themselves. What they do depends on how much of a hurry they are in, what mood they are in, and how much they like to fool w/Oracle.
  5. When a change is made the developers MUST notify me. Once or twice a week, I encapsulate changes into an SQL*Plus script and blast them out to all the other instances. The developers aren't allowed to modify instances other than the development instance. I also update the ERwin data model.
  6. Even though they aren't supposed to change the TEST instance, our developers DO have the ability to do so. This is partly because I could only push control so far, and partly because saw no great benefit from pushing for more. I'm not always available, and can't be a bottleneck to the project. The risk is that some changes might get made to both instances, I won't know about them, and consequently they won't get propogated to the client site when we deliver versions of the software. This has happened on occasion, but we are very satisfied with the risk/reward tradeoff here. The developers I work with are very good about following procedure, and we do testing at the client site to verify the installation.
  7. My management doesn't support rigid access control anyway. Everyone in the practice has physical access to the machines, and can easily go around almost any security that I setup. Depending on who did what, there would be no negative consequences for doing so. I once had someone decide over christmas vacation that they were going to move an instance to another physical machine. She had actually started work on this project before i found out!

We have three developers on one project, and four working on another. These are pretty small groups, so we can afford to be a bit less rigourous than a larger organization could be.

I really make an effort to give the developers everything that they ask for, and i do everything that I can to make their work easier. In return, they have been very good about keeping me in the loop and following procedures. As I said, we have had very, very few real problems.

I would make the following recommendations to you:

  1. Try to keep control of the TEST instance. One person should really be responsible for all changes to it.
  2. You may want to ask your developers if they would prefer sharing ONE development instance, as opposed to five seperate databases.
  3. I think you are confused when you use the term "tablespace" in your note below. A tablespace loosely equates to a set of operating system files where Oracle stores tables. Giving each developer their own tablespace doesn't buy you much. Giving them each their own user-id would. Even better to give them a totally seperate database instance.

If you have any questions, please feel free to email me.

regards,

Jonathan Gennick

On Wed, 03 Jun 1998 18:04:41 GMT, akrighjb_at_my-dejanews.com wrote:

>One of my responsibilities is Dba for a Development Team.
>
>There's about 5 Developers on the team I'm supporting
>and initially I created a tablespace for each team member
>to create their objects and work within.
>
>This is a development instance that has a tablespace in which
>they are not suppose to create objects within only test
>their programs (stored procedures) against. Lets call this
>tablespace TEST with objects in it owned by TEST.
>
>I've tried to educate them on the Oracle Architecture.
>What I've told them is they can copy tables from the TEST
>to their tablespace and run their programs. And then when they;re
>ready compile/run they're procedures as TEST.
>
>I created a role called DEVELOPER and I've been adding
>privileges to the role as I get "I CAN'T DO THAT BECAUSE
>I KEEP GETTING INSUFFICIENT PRIVILEGES". The
>role now is just short of DBA.
>
>What I'm looking for is peoples input on how to be a DBA
>for a development project. Experiences, how to setup and
>manage, politics, and whatever knowlege you can provide
>for this position.
>
>Thanks
>John
>
>
>-----== Posted via Deja News, The Leader in Internet Discussion ==-----
>http://www.dejanews.com/ Now offering spam-free web-based newsreading
Received on Wed Jun 03 1998 - 19:58:41 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US