List:General Discussion« Previous MessageNext Message »
From:Shawn Green (MySQL) Date:July 13 2010 6:26pm
Subject:Re: How to become a DBA on MySQL
View as plain text  
On 7/13/2010 9:24 AM, alba.albetti wrote:
> Hi,
> I'd like to know which are the main tasks for a DBA, so in addition of the on-line
> tutorial of MySQL, is there anyone telling me whether there exists some tutorial (better
> if in PDF) where it's possible to undestand and learn all you need for managing the MySQL
> DB as DBA? I mean I'd like to read something explaining what are datafiles, tablespaces,
> ... and what usually a DBA is asked to do (creating databases, starting up and shutting
> down the database, managing the database's storage structures, making database backups and
> performing recovery, monitoring and tuning performance, ...) In other words I'd like to
> read how to manage a DB as DBA, because I've always worked only as developer and not as
> DBA.
> Thanks!
> 

You probably already have the basic skills you need. You just need to 
shift your approach to the problem.

While most "developers" are more worried about putting data into a 
database and finding it when they need it, the DBA has a different 
philosophy. The DBA is the one entrusted to keep that data safe, to 
protect the data from the bad habits of inexperienced programmers, and 
to ensure that the whole system (not just the parts the users need to 
touch) remain in good working order.

It's the same difference between borrowing a car to drive it and caring 
for a car you own while allowing others to drive it from time to time.

Here is a very short and incomplete list of the big things you should be 
able to do as a DBA:

1) Understand the backup and restore processes. Be able to perform them 
reliably.

2) Understand how the data is stored on the system resources. Be 
prepared to relocate data to a different resource.

3) Understand how MySQL permissions work. Create and change accounts as 
necessary.

4) Understand how to read the MySQL performance and diagnostic reports. 
When something is not working well, these are usually the first place to 
look for clues. At the minimum learn how to use and understand the 
EXPLAIN results; the SHOW reports; and how to activate, deactivate, and 
interpret the InnoDB monitors.

5) Be able to read and understand the Error log.

6) Learn the advantages and disadvantages of each storage engine.

7) Learn at least the basic skills about how to navigate within and 
maintain the machine that is hosting your MySQL instance.

8) Always keep learning - I cannot stress this on point enough. You must 
continue learning to stay ahead of your developers. They can and will 
find new and exciting ways to make your MySQL servers run like they are 
frozen in mud. Use your development experience to find better ways to 
write their queries and to design their tables.  Also, some problems may 
be due to bugs. By staying current with the state of the MySQL 
ecosystem, you will make yourself aware of problems that you may not 
have needed to encounter on your own.

The links to the books and other resources that you have been given (see 
other responses in this thread) are excellent places to learn these, and 
all of the other, skills that you will need to use to become a good DBA. 
How good you become is all in the attitude you take.

If you are hands-off and neglectful of your database server, then all of 
the databases hosted there may become poorly organized resource hogs. If 
you, as a DBA, are diligent, protectful, proactive, and concerned then 
you will have a much better chance of achieving amazing performance out 
of your servers.

Regards,
-- 
Shawn Green
MySQL Principle Technical Support Engineer
Oracle USA, Inc.
Office: Blountville, TN
Thread
How to become a DBA on MySQLalba\.albetti13 Jul
  • Re: How to become a DBA on MySQLRob Wultsch13 Jul
    • Re: How to become a DBA on MySQLJohn Daisley13 Jul
  • Re: How to become a DBA on MySQLCamilo Uribe13 Jul
  • Re: How to become a DBA on MySQLClaudio Nanni13 Jul
    • RE: How to become a DBA on MySQLJerry Schwartz13 Jul
      • RE: How to become a DBA on MySQLKeith Clark13 Jul
        • Re: How to become a DBA on MySQLJohn Daisley13 Jul
        • RE: How to become a DBA on MySQLJerry Schwartz13 Jul
          • Re: How to become a DBA on MySQLNilnandan Joshi15 Jul
          • RE: How to become a DBA on MySQLMartin Gainty18 Jul
            • Re: How to become a DBA on MySQLRob Wultsch18 Jul
              • RE: How to become a DBA on MySQLJerry Schwartz19 Jul
  • Re: How to become a DBA on MySQLMySQL)13 Jul
    • Re: How to become a DBA on MySQLPrabhat Kumar13 Jul