This question is almost mandatory in any SE site for basic reference.

Please post only books with permanently value for DBAs in general.

The post should be a must read book, the classical ones, the foundation books, not books for specific products or dated.

The latest book for MS-SQL Server 2008 could be the state of the art but it is dated and specific.

I have a genuine interest. I'm basically a programmer and database knowledge is a flaw on my formation. I know lot of things about the databases just doing day-by-day tasks.


8 Answers 8


I started with an example of good must read book.

An Introduction to Database Systems by C.J. Date.

This is one of the most influential book to development of all concepts and technological available today. The book follows an academic style and has lots of real cases.

The primary target is not for DBAs but Database systems developers, but a real good DBA knows how your database works and how to handle with its limitations and hidden capabilities.


Besides the classics by Codd & Date, here are the DBA books on my shelf:

DBA Survivor by Thomas LaRock is a must-read for beginning and evaluating your DBA career. This book is the reason why I'm on StackExchange.

The Data Warehouse Toolkit classics by the Kimball Group is the most authoritative guide on dimensional modeling and data warehousing. Since data warehousing has become ubiquitous, you'll want a reference written by the people who started it all.

My mentor told me SQL for Smarties by Joe Celko is the book for expert SQL programmers who want to become master SQL programmers. I'm currently reading this one.

Lastly, Show Me the Numbers by Stephen Few is a great reference on the principles and practices for effective table and graph design. It's the equivalent of UX design for reports.


Too many DBAs just run (or copy and paste off the Internet) commands blindly, like they are operating a "black box" and lack the ability to reason about what the machine is doing. You have to be able to take it down a level, understand how sockets work, how to use strace, tcpdump and gdb, how compilers work, how to profile, how memory works, exactly what bit of your stack (app/db/os/hardware) does what and how to tune it.

Or any language - Python, Tcl/Tk, whatever. Even Excel VBA. Awk/Gnuplot. A good DBA is capable of building new tools, for themselves and for their team. Too many DBAs just know how to click in TOAD or equivalent, they can't even generate a graph by themselves. If you can't visualize it, how can you understand it?

One of my recent projects automated a manual DBA process that took 3 days down to a 15 minute script at my site. Python has improved my productivity as a DBA at least 10x.

Everyone involved in any sort of IT project work needs to read and understand this. The ones that don't are doomed to repeat it.

If you are serious about your career and mean to be in the business a long time, then this or similar will educate you as to the economic tides we all swim in.

Because we all need to speak to developers, whether in-house or at our vendors - this will help you get onto their level and speak their vocabulary.

Note that none of these are anything to do with databases!


"Dissecting SQL Server Execution Plans" by Grant Fritchey - specific to Microsoft SQL Server, but essential if you have to troubleshoot performance issues.


In the context of MySQL,

High Performance MySQL: Optimization, Backups, Replication, and More Baron Schwartz (Author), Peter Zaitsev (Author), Vadim Tkachenko (Author), Jeremy Zawodny D. (Author), Arjen Lentz (Author), Derek J. Balling (Author)

is an awesome reference (amazon link). 2nd edition is vastly superior to the first.

The analogue reference for PostgreSQL is PostgreSQL 9.0 High Performance by Gregory Smith.


Well, pretty much anything by C.J. Date is thought-provoking and arguably a must read. My particular favorites are The Database Relational Model and Date on Database.

Separately, some people disagree about Ambler, but I've found Refactoring Databases to be a good reference in the "design pattern" paradigm.


Database Administration: The Complete Guide to Practices and Procedures by Craig Mullins is a good one to get.

It covers a wide variety of topics of general database administration, without being platform-specific. As computer books go, it's not too pricey either, and has solid reviews on Amazon.


The Essence of SQL by David Rozenshtein. Anthony Molinaro, who wrote "The SQL Cookbook" said that it was still the best book on SQL. I bought a used copy of The Essence of SQL for over twice the cover price and haven't regretted it. I checked it out from the library through inter-library loan before I bought it.

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