PostgreSQL is a unique DB system with a big focus on scalable architecture. Many backend developers pick up MySQL as their first engine because it comes by default on most hosting providers. But PostgreSQL is a more versatile option with many of the same(and better) features available.
But learning PostgreSQL from scratch can be tough. If you’re just a developer looking to learn database administration it’ll take a long time and tons of practice. But DBA skills are valuable and they’ll make you a much more lucrative asset to any team.
This post covers the absolute best books for learning PostgreSQL. I’ve included a series of books ranging from basic concepts up to more intermediate & advanced topics. With this collection you’ll surely be able to find something that’ll help you learn and grow as a Postrgres DBA.
While this book is certainly dated, it’s also one of the best to help you advance as a complete beginner. PostgreSQL 9.0 High Performance by Gregory Smith covers 468 pages of tips for optimal Postgres management.
You’ll learn the best tips and workflows to scale an existing PostgreSQL architecture or launch a new project. It also comes with advice and practical guides to help you start databases from scratch. The book covers Postgres v8.1-v9 and although it is a bit outdated, the fundamental workflows have not changed.
I’d recommend this for someone who already has a bit of database knowledge and wants to move into higher-level concepts for learning Postgres management.
This is a must-have book for anyone who’s serious about Postgres development. The PostgreSQL 9 Administration Cookbook is approachable even to beginners who are somewhat familiar with relational databases like MySQL.
You get over 150 different code snippets called “recipes” which aid in Postgres management, deployment, and scaling. This book was written by a Postgres contributor Simon Riggs. He’s been a DBA for well over a decade and has the right experience working with Postgres to be an authority for this title.
In the second edition you get some revised code snippets and updates to passages that make the explanations a bit easier to understand. This is an absolute must-have book for anyone serious about PostgreSQL.
Here’s another great book published by Packt simply titled Learning PostgreSQL. This is genuinely a beginner’s book. It starts with detailed descriptions of relational database models and even the NoSQL model. You also get a history lesson in the background of PostgreSQL.
The best part of this book are the practical lessons. You’ll learn how to setup databases, configure edits & updates, plus you’ll learn the most common mistakes that beginners make during each step of the process. And midway through the book contents shift into more dev-oriented topics, some of which include writing C functions connecting Postgres with raw SQL.
If you’re completely new to databases you might find yourself lost halfway through this book. But if you know a little and want to really expand your knowledge I would highly recommend Learning PostgreSQL as a place to start.
Moving into more advanced territory we have Troubleshooting PostgreSQL. Many DBAs have moved onto forums and online communities to find support for their problems. But books are still a great way to learn, especially this one since it’s a compendium of solutions.
The biggest value of Troubleshooting PostgreSQL is the terse direct nature of the writing. PostgreSQL does have forums and online documentation, but it’s massive and difficult to sift through unless you already know how it works. This book is much easier to understand and it covers the absolute core fundamentals you need to know for troubleshooting.
My biggest complaint is with the length. At only 157 pages I’m surprised the author wasn’t able to fit more into the writing. But if you can get this digitally you’ll pay less and it’ll act as a reference guide whenever you need it.
PostgreSQL Server Programming is another intermediate-to-advanced title aimed at backend developers, or devs who want to get into the backend side of web projects. In the 2nd edition new updates were added to include languages like Python and PL/pgSQL.
Each example walks you through the process and guides you along explaining new topics as they come up. I would definitely recommend this book for someone who wants to do backend programming with PostgreSQL. This is likely a small audience and I understand it won’t fit the goals of most people.
But if you’re really into Postgres and want to delve deeper this book will prove invaluable to your learning process.
Perhaps the tome of learning PostgreSQL is the self-titled book written by Korry Douglas. Currently in its second edition, this book spans over 1,000 pages of content starting from the very beginning of basic database theory.
Many chapters are dedicated to intermediate topics like Postgres extensions and backend programming languages that connect into a Postgres database. You get everything from initial installation to writing secure code to connect and run on the backend.
Some beginners may be scared or put off by the length and depth of this book. It is by no means just a beginners book, and in many cases it goes much further into advanced topics you didn’t even know you needed to learn.
It’s definitely worth studying if you have the ambition but it may not be super friendly to inexperienced readers.
On the cheaper end of the spectrum we have PostgreSQL Administration Essentials. It’s not the perfect guide for beginners but it can get you started on the right track.
The first chapter helps you setup PostgreSQL on your machine and learn the most common setup methods. You’ll then dive into all the fundamentals like user permissions, indexing, logfiles, and recovery backups.
More advanced developers will not get much from this book. Beginners will definitely like it, but only those interested in database administration. Notice how the book’s title specifically includes “administration” setting it apart from books that teach Postgres to web developers.
If you’re interested in the DBA path and want to learn PostgreSQL then I would highly recommend this book. For anyone else it’ll probably be too detailed to be helpful.
The PostgreSQL Developer’s Guide spans just over 200 pages covering a broad range of topics from security to data manipulation. It’s definitely a developer’s guide to relational databases(in this case Postgres).
If you want to develop real world applications on PostgreSQL then you can definitely learn from this book. Granted it doesn’t cover absolutely everything in detail, but it covers enough to be helpful. Especially if you already know the basics and just want to dive into development.
But with so many other books out there I can’t immediately recommend this one. It’s definitely good, but it feels better for intermediate devs who want to read through examples and pick up some tips.
Hans-Jürgen Schönig has more than 15 years experience working with the PostgreSQL community. He’s the author of many books in this post including PostgreSQL Replication.
Replication is a process fraught with failure points at every turn. This book is a failsafe for anyone hoping to learn about replication the right way. Topics include sharding, asynchronous replication, and lots of formulas for Linux admins.
I think this book could be even longer beyond it’s current 290 pages. But it does cover Postgres replication well and it’ll teach you all the proper methods to implement your preferred technology. The details provided are just enough to help you learn the right way to handle replication.
For this reason I would definitely recommend PostgreSQL Replication for intermediate-to-advanced users who want to learn more about the topic.
PostgreSQL for Data Architects is the perfect book for web developers or data architects that usually work on the software side. You’ll learn everything about PostgreSQL from basic setup to replication and backup management.
The best part of this book is the actual writing. It’s easy to follow even if you only understand the very basics of relational databases. The book was published in 2015 focusing on Postgres v9.3. There have been many new versions released since then, but I still find this book more relevant than ever.
It’s a strong toss up between this book and PostgreSQL by Korry Douglas. They both teach similar concepts but in very different ways. If you’re a beginner you can’t go wrong with either of these titles.
Here’s another introductory book targeting people who don’t know much about the database side of project management. PostgreSQL: Up and Running is perhaps the best introduction for aspiring DBAs who really want to dig into Postgres environments.
The authors are knowledgeable and very active in the Postgres community. They know what they’re writing about and they do it well. Installation, configuration, and troubleshooting are three common tasks that DBAs will face and they’re covered extensively in this book.
More advanced topics like sharding and replication are not covered in great detail. This really is a beginner’s book, and thankfully there are dozens of more advanced books to follow up with after reading this one.
But for 230 pages and 10 detailed chapters of instruction this book is one of the best you can buy for learning the core fundamentals of Postgres from scratch.
One last recommendation here that’s a bit off the path of Postgres, but still valuable for anyone looking into a DBA career. SQL and Relational Theory covers the cornerstone of relational databases.
This book teaches you the proper way to write SQL code from the very beginning. You don’t need to know jack about databases before buying this book(although it does help). You’ll learn table structures, relations, NULL & boolean concepts, plus some logic-based topics related to building secure SQL queries.
This book is database-agnostic but does focus on relational database models. If you’re interested in actual SQL queries then you should definitely consider grabbing a copy of SQL and Relational Theory. It’ll teach you everything you need to know and probably a little more.
Among all these resources I think there’s at least one book here made for aspiring Postgres DBAs and experienced users.
Absolute beginners to DBA concepts would learn a lot from PostgreSQL: Up and Running.
Developers might do better with PostgreSQL Server Programming or the PostgreSQL Developer’s Guide.
Getting into more advanced topics you have books on PostgreSQL troubleshooting and replication.
If you know exactly what you’re looking for then you’ll have no problem finding a Posegres book to get you moving. But if you have any recommendations to add into this list feel free to contact us and share your favorite!