Should developers have DBA role?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • larry

    Should developers have DBA role?

    Hi. Our company has about 20 application developers/architects and one
    certified dba. Our developers both design the databases and build the
    applications. We're confused about what permissions a developer is
    supposed to have. On the one hand, we obviously don't want developers
    to have privileges like shutting down the db. On the other hand, some
    of the Oracle tools, like Change Management Pack, are things that our
    developers need to run. Our developers need to be able to compare and
    synchronize schemas on a routine basis. Yet according to the oracle
    documentation, Change Management Pack requires dba privilege. At the
    same time, the oracle docs discuss how the tool can be used by
    developers. So my question is: Does a developer typically have dba
    access? If not, then what permissions is a developer supposed to have?
    Is there any guidance, from oracle or elsewhere, on this issue? Any
    help appreciated.

    Larry
  • Michael Willer

    #2
    Re: Should developers have DBA role?

    larry wrote:
    Hi. Our company has about 20 application developers/architects and one
    certified dba. Our developers both design the databases and build the
    applications. We're confused about what permissions a developer is
    supposed to have. On the one hand, we obviously don't want developers
    to have privileges like shutting down the db. On the other hand, some
    of the Oracle tools, like Change Management Pack, are things that our
    developers need to run. Our developers need to be able to compare and
    synchronize schemas on a routine basis. Yet according to the oracle
    documentation, Change Management Pack requires dba privilege. At the
    same time, the oracle docs discuss how the tool can be used by
    developers. So my question is: Does a developer typically have dba
    access? If not, then what permissions is a developer supposed to have?
    Is there any guidance, from oracle or elsewhere, on this issue? Any
    help appreciated.
    >
    Larry
    Larry,


    You are talking about a development-database, right? In that case the
    developers should have whatever privileges they need to do their job.
    BUT that database is their responsibility meaning, if something goes
    very wrong and the database is lost, they should be able to restore the
    database from an export, cold backup or whatever. We are not discussing
    a 24x7 database so a daily cold backup should be enough.

    If this is a share developement-database then try to limit the number of
    developers with DBA privs, ie. if only a few of the developers need to
    run CMP then only that group should have DBA privs.

    You _will_ need a test-database however, on this database no developer
    should have DBA privs, same for integration and production naturally.


    --
    Hope this helps.

    Michael Willer
    Oracle & J2EE architect
    Cyber Com Consulting a/s

    Comment

    • Ryan Gaffuri

      #3
      Re: Should developers have DBA role?

      spam1.minus1@co mjet.com (larry) wrote in message news:<6669c584. 0307081318.256a 9aee@posting.go ogle.com>...
      Hi. Our company has about 20 application developers/architects and one
      certified dba. Our developers both design the databases and build the
      applications. We're confused about what permissions a developer is
      supposed to have. On the one hand, we obviously don't want developers
      to have privileges like shutting down the db. On the other hand, some
      of the Oracle tools, like Change Management Pack, are things that our
      developers need to run. Our developers need to be able to compare and
      synchronize schemas on a routine basis. Yet according to the oracle
      documentation, Change Management Pack requires dba privilege. At the
      same time, the oracle docs discuss how the tool can be used by
      developers. So my question is: Does a developer typically have dba
      access? If not, then what permissions is a developer supposed to have?
      Is there any guidance, from oracle or elsewhere, on this issue? Any
      help appreciated.
      >
      Larry

      my personal opinion is that it depends on the skill level and interest
      in learning of your developers. Alot of very good developers have a
      sound and firm understand of database administration. Having them work
      closely with DBAs and giving them more access is the way to go.

      Also, developers that are willing to learn and improve their DBA
      skills should be given higher access. Those that are not interested in
      learning should be given less access. Its really not all that black
      and white. I think you and your DBA should decide which developers can
      be trusted with access and which cannot.

      I dont like shops that are strict enforcers of a seperation between
      DBAs and developers since alot of tasks over lap. A good DBA should be
      able to write PL/SQL and do development. A good developer should have
      a firm understand of architecture and tuning. It depends on the
      quality of your developers and more importantly their willingness to
      learn.

      Its also in large part dependent on how good of a communicator your
      DBA is. Is he willing to help them learn? Its alot more work at first,
      but Ive found that a DBA who is willing to impart alot of his
      knowledge on people willing to learn is a DBA who ends up having an
      easier job down the road.

      Now by 'developer' what kind of developer are there? ARe they 'oracle
      developers'? Or are they software engineers?

      Comment

      • larry

        #4
        Re: Should developers have DBA role?

        Mark.Powell@eds .com (Mark D Powell) wrote in message news:<2687bb95. 0307140538.6dba 1f7c@posting.go ogle.com>...
        Our location does not allow developers any create object privileges.
        All requests for objects are submitted to the DBA even for test
        systems.
        That just isn't possible for us, resource-wise. 20+ developers, dozens
        of production systems, one dba. What is your developer/dba ratio?

        If the developers want to compare schemas they can diff the
        source code and table describes.
        We tried that, but the diff output is not very helpful. You'll get
        pages and pages of things that are "different" only because the schema
        name is different, and that one column that has a different size just
        doesn't stand out at all. Do you have any suggested scripts for
        diffing, that can be run by a non-dba? We normally want to diff two
        schemas with different names on the same instance, or two schemas with
        different names on different instances.

        The DBA has charge of the production
        source. The developers check the code out, modify it, and request the
        DBA to apply the code to production.
        >
        What do you use for checkin/out?
        HTH -- Mark D Powell --
        It certainly does.

        Larry

        Comment

        • larry

          #5
          Re: Should developers have DBA role?

          rgaffuri@cox.ne t (Ryan Gaffuri) wrote in message news:<1efdad5b. 0307140504.4da8 8c79@posting.go ogle.com>...
          I dont like shops that are strict enforcers of a seperation between
          DBAs and developers since alot of tasks over lap. A good DBA should be
          able to write PL/SQL and do development. A good developer should have
          a firm understand of architecture and tuning. It depends on the
          quality of your developers and more importantly their willingness to
          learn.
          Sounds reasonable to me, but I'm not sure I could sell that to the
          organization. I think the current mindset is that the dba role is
          called the dba role because it is only supposed to be assigned to
          (certified) dbas.
          >
          Now by 'developer' what kind of developer are there? ARe they 'oracle
          developers'? Or are they software engineers?
          That's a good question. Most of them are software engineers with years
          of experience on Sybase and/or Oracle. They do the architecture.
          Ability really runs the gamut, some of them wouldn't know a foreign
          key if it was on their keychain, and others do everything in 3rd
          normal.

          We're puzzling right now over what kind of training to give them. The
          Oracle Developer training seems to be things like SQL and data
          modeling, which they already know. The only other training seems to be
          dba. Is it usual to send developers for dba training?

          Thanks in advance.

          Larry

          Comment

          Working...