MySQL DBA

Michael Butash michael at butash.net
Thu Aug 20 18:34:45 MST 2009


In my experience in big enterprise to small offices, either you have
"the dude that kinda dabbles with everything", or you have quite
separate roles.  Primarily you would have a SQL Admin/Engineer (just sql
performance/operations/engineering), Linux Engineer (os, apache, sql),
and a Web Dev/Admin/Engineer (php coding, cms, site management).
Usually you also have Security and Network folk in the mix too to keep
things sane.  Sometimes you have one person that likes to dabble in
each, and can varyingly admin them all as so to *get by*, but they're
subsequently "jack of all trades", and typically "master of none" kind
of people.  

As an IT shop grows and the infrastructure becomes more important
(and/or profitable), these rolls eventually form into something like the
ones mentioned, and require separate headcount as they don't always even
exist in the same department (IT and development).  The mostly singular
focus allows them to become "experts" in their respective category, but
don't often cross-pollinate skill sets then.  Usually when I see someone
asking for an employee that is a "master of all", I just laugh knowing
they don't know what they're doing, or probably even what they really
need.

Finding an environment where you can "dabble" professionally in
everything is typically going to be a low-pay, thankless job I would
say, as a company wants 1 person to do *everything*, but will pay low
because they don't know what they really need.  They're often trying to
find their magical unicorn employee that will do everything for little
pay.  Government agencies tend to be fond of these roles, but pay low
enough they really have no expectation of finding someone close, so they
settle for the closest that will actually apply.  They learn and cope as
they can, and move on once they pick one of those skills to focus on in
bigger companies that have already learned the value of the separate
skill sets among employees.

Your best bet is VMWare or other virtualization technology - get a
decent multi-processor/core pc, buy a bunch of ram (8gb runs about 80
bucks), and start building distributed server environments using all of
the above virtually.  Pick some software like wordpress or a basic CMS
that you can turn up a php/sql-enabled website to tinker with, and get
it working regardless of content.  Move the database to it's own server
apart from the apache host, and learn some networking/security.  Add
custom authentication to the site to tinker with apache and learn the
various modules.  Somewhere along the line learn to performance-tune
your databases, and you should be decent as a "generalist" LAMP guy.
Howtoforge.com has a lot of articles to walk you down the path to
enlightenment, and you can fill in a lot of blanks around them on your
own.

-mb


On Thu, 2009-08-20 at 16:27 -0700, Trent Shipley wrote:
> I am used to seeing jobs involving MySQL as part of positions being
> advertised for a LAMP generalist.  I never respond.  Not only am I not
> particularly competent in any of the components, I have a hard time
> seeing myself as competent to manage that kind of stack.  I actually
> doubt many people are really competent at managing a LAMP stack all by
> themselves.
> 
> However, I was recently looking for jobs on DICE and I saw
> advertisements for dedicated MySQL positions -- with more emphasis on
> DBA that development.  I can imagine being a competent DBA.  I taught
> myself to work with Oracle and I like database work.
> 
> In the early 2000's Oracle was complex, DB2 somewhat less complex, SQL
> Server was almost friendly in comparison, and MySQL pretty simple to
> administer -- almost a toy compared to the big boys.  How much more
> complex has MySQL gotten in the last five years or so?  What would be
> involved in gaining competence.  Do you think you could read up on
> MySQL, then find people stupid enough to let you work on MySQL
> databases, preferably for money so you could get experience?  How would
> you encourage such stupidity?
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> 



More information about the PLUG-discuss mailing list