I am currently working as an application developer on a project which involves the creation of a new SQL Server database. I am actively working with a group of DBAs who will play some role in the creation and maintenence of this database.

I want to understand what role the DBA normally plays in this type of scenario. It seems the DBAs consider everything to be the responsibility of the application team. I designed the schema and indexes, generated the DDL, and am currently in the process of performance testing the database. Are these tasks normally performed by development?

Also, it has been suggested that development should be responsible for the creation and maintenence of the database user accounts. We would be responsible for periodically changing the passwords on the production databases. Is this the norm? It seems to me that it should be done by the DBAs.

  • 1
    VtC'd as this question isn't answerable (as defined in the FAQ) in it's current form. Answers to this question will be be a matter of opinion, not fact. The existing answer and comments are a good example of why this type of question doesn't fit well here. Mar 29 '13 at 20:51

Of the tasks that you've listed the creation and maintenance of the user accounts in production should be done by the DBAs. The developers shouldn't have the passwords of the production accounts at all.

Designing the tables, indexes and performance testing should all be done by the developer. The DBA should be handling the creation of the objects on the production server, backups, etc. The DBA will find any additional indexes which are needed after the system goes into production and create them in production.

  • Development is responsible for configuring the application servers with database connection pools. This requires us to have the user accounts and passwords. How should this be handled? Mar 29 '13 at 18:01
  • 1
    Sysadmin should be configuring the application servers based on a deployment document which the dev team provides. Developers shouldn't ever be touching production servers, that's what sysadmins and DBAs are for.
    – mrdenny
    Mar 29 '13 at 18:03
  • 4
    You are talking about administrative DBAs correct? As opposed to development DBAs. We have a rather large shop with one group that handles the tasks that you are talking about, and we have another group of DBAs that are responsible for designing and creating table structures, SPs, functions, optimizations etc. Mar 29 '13 at 18:52
  • Correct I'm talking about administrative DBAs not development DBAs.
    – mrdenny
    Mar 29 '13 at 18:53
  • Development DBAs would fall under "Developer", who might also have access to administrative tasks in production. Mar 29 '13 at 19:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.