Forum Discussion
What Access Should a SQL Developer Have
Hi ya'll, I am hoping this will spark some discussions. At every place I have worked, developers always struggle to get the access they need on Sql Server to do basic troubleshooting, even on the development environment. I've run into problems where I can't get a DBA to give me enough access to figure it out or solve the issue. In every company I've worked for, there seems to be a great divide between developers and DBA's. It seems to get a little better, but as soon as I change contracts/jobs, the process starts all over again.
Does anyone here or does Microsoft have best practices around what rights and access a developer should have vs the DBA's.
I like that DBA's should be focused on maintaining the hardware and security, and the DBA's should be part of the approval process to allow or deny access.
Can others share their experience with the environment they work in and how this is dealt with?
I am also very interested in what Microsoft says. Do they have any strategies or best practices in place that work well for them?
Please post opinions, suggestions, etc. Here
- 耕志 馮Brass Contributor
Frankly speaking, DBAs and developers, viewers ...etc. are different roles in databases accesses. However, the professional DBAs are valuable and expensive so that not all companies have the willingness to invest them even thought they are beneficial for systems stabilities and efficiencies.
In my experiences, those companies which own individual DBAs are global companies and their DBA staff are well-trained and experienced so that they have all knowledge about each database roles and related access right mappings. That ability ensure the database accesses are well-controlled without any security risks and also prevent inappropriate SQL statements cause database crash such as deletion, altering tales... etc. In this practice, developers, viewers or analysts shall apply individual user account and indicate their needs so that DBA can assign the appropriate role(s). Only DBAs have full access rights of databases. The others have constrained accesses. In addition, they usually divide the operational databases and statistical databases to empower the efficiencies. As to the roles and privileges map, this is a professional domain and need be trained, practice many many times in training environment.On the other hand, those middle or small companies which can’t afford professional DBAs sometimes will assign one or two IT member(s) in charge of DBA. Basically they are not focus on DBA domain only so that they may not have sufficient knowledges to handle DBA roles as well. But developers, viewers and analysts still can have basic DBA services at their workplaces. In this case, developers may can create, alter, delete tables/ views/ DB accounts themselves. Significantly, this is risky and sometimes cause system unstable, but it is flexible....
Regard those practices mentioned above, I think you should clarify how many resources your company have and how much system downtime they can be fine. After clarifying, you may know how to design your own solution for the company you work for. Hope those information are useful for you.