August 14, 2012 by Mike Hillwig
Welcome to the Tuesday edition of How Not to be a Cranky DBA. So far, this series has been a lot of fun to write, and I hope you’re enjoying it.
Since the beginning of time, there has been a rift between DBAs and developers. I’ll never forget one of my first classes on database administration. The instructor said that a developer’s job is to break things, and our job as DBAs was preventing them from doing this. It’s not too far from the truth.
Developers like to look for things that are broken. And they like to “fix” things. Unfortunately, all too often, they break more than they fix. Our job as DBAs is to serve as the gatekeeper to production and prevent them from making a bad situation worse. This is the point where I ask if things have been tested, approved, and checked into source control. You ARE using source control, right?
When I presented in New York, a member of my audience called me out and said that I was being a bit hypocritical by saying that developers should never be allowed to touch production. That’s not what I’m saying at all. They can look–they just can’t touch. If I’m feeling particularly generous, or if my boss forces my hand, I’ll grant them read-only access to a production environment.
And there could be places and times where developers can touch production. My environment is not that place, and today is certainly not that time. Instead, I’d rather do more frequent refreshes of a test/QA environment.