Book description
This new edition will help you learn PostgreSQL from scratch with the latest version, providing a complete focused view on aspects like configuration, high performance, partitioning, backup, server-side programming and replication. Purchase of the print or Kindle book includes a free eBook in PDF format.
Key Features
- Learn the fundamentals of PostgreSQL 16, including SQL statements, replication, and security
- Enhance your learning journey with the provided Docker images for practical hands-on exercises and tests at the end of each chapter
- Get new and improved examples, use-cases, and scenarios specifically for concepts like partitioning, replication, back-up and restore, cluster configuration, monitoring and others
Book Description
The latest edition of this PostgreSQL book will help you to start using PostgreSQL from absolute scratch, helping you to quickly understand the internal workings of the database. With a structured approach and practical examples, go on a journey that covers the basics, from SQL statements and how to run server-side programs, to configuring, managing, securing, and optimizing database performance.
This new edition will not only help you get to grips with all the recent changes within the PostgreSQL ecosystem but will also dig deeper into concepts like partitioning and replication with a fresh set of examples. The book is also equipped with Docker images for each chapter which makes the learning experience faster and easier. Starting with the absolute basics of databases, the book sails through to advanced concepts like window functions, logging, auditing, extending the database, configuration, partitioning, and replication. It will also help you seamlessly migrate your existing database system to PostgreSQL and contains a dedicated chapter on disaster recovery. Each chapter ends with practice questions to test your learning at regular intervals.
By the end of this book, you will be able to install, configure, manage, and develop applications against a PostgreSQL database.
What you will learn
- Gain a deeper understanding of PostgreSQL internals like transactions, MVCC, security and replication
- Enhance data management with PostgreSQL’s latest partitioning features
- Choose the right replication strategy for your database
- See concrete examples of how to migrate data from another database, perform backups and restores, monitor your PostgreSQL installation and more
- Ensure security and compliance with schemas and user privileges
- Create customized database functions and extensions
- Get to grips with server-side programming, window functions, and triggers
Who this book is for
Learning PostgresSQL 16 book is for anyone interested in learning about the PostgreSQL database from scratch. Anyone looking to build robust data warehousing applications and scale the database for high-availability and performance using the latest features of PostgreSQL will also find this book useful. Although prior knowledge of PostgreSQL is not required, familiarity with databases is expected.
Table of contents
- Preface
- Introduction to PostgreSQL
- Getting to Know Your Cluster
- Managing Users and Connections
-
Basic Statements
- Technical requirements
-
Creating and managing databases
- Creating a database
- Managing databases
- Introducing schemas
- PostgreSQL and the public schema
- The search_path variable
- The correct way to start working
- Listing all tables
- Making a new database from a modified template
- Dropping tables and databases
- Dropping tables
- Dropping databases
- Making a database copy
- Confirming the database size
- The psql method
- The SQL method
- Behind the scenes of database creation
- Managing tables
- Understanding basic table manipulation statements
- Summary
- Verify your knowledge
- References
- Learn more on Discord
-
Advanced Statements
- Technical requirements
- Exploring the SELECT statement
- Using the like clause
- Using ilike
- Using distinct
- Using limit and offset
- Using subqueries
- Learning about joins
- Aggregate functions
- Using UPSERT
- Learning the RETURNING clause for INSERT
- Exploring CTEs
- CTE in PostgreSQL since version 12
- Summary
- Verify your knowledge
- References
- Learn more on Discord
- Window Functions
-
Server-Side Programming
- Technical requirements
- Exploring data types
- The NoSQL data type
-
Exploring functions and languages
- Functions
- SQL functions
- Basic functions
- SQL functions returning a set of elements
- SQL functions returning a table
- Polymorphic SQL functions
- PL/pgSQL functions
- First overview
- Dropping functions
- Declaring function parameters
- Control structure
- Conditional statements
- Loop statements
- Exception handling statements
- Security definer
- Summary
- Verify your knowledge
- References
- Learn more on Discord
- Triggers and Rules
- Partitioning
-
Users, Roles, and Database Security
- Technical requirements
- Understanding roles
- ACLs
-
Granting and revoking permissions
- Permissions related to tables
- Column-based permissions
- Permissions related to sequences
- Permissions related to schemas
- Permissions related to programming languages
- Permissions related to routines
- Permissions related to databases
- Other GRANT and REVOKE statements
- Assigning the object owner
- Inspecting ACLs
- RLS
- Role password encryption
- SSL connections
- Summary
- Verify your knowledge
- References
- Learn more on Discord
- Transactions, MVCC, WALs, and Checkpoints
- Extending the Database – the Extension Ecosystem
- Query Tuning, Indexes, and Performance Optimization
- Logging and Auditing
- Backup and Restore
-
Configuration and Monitoring
- Technical requirements
- Cluster configuration
- Monitoring the cluster
- Advanced statistics with pg_stat_statements
- Summary
- Verify your knowledge
- References
- Learn more on Discord
-
Physical Replication
- Technical requirements
- Exploring basic replication concepts
- Managing streaming replication
- Summary
- Verify your knowledge
- References
- Learn more on Discord
-
Logical Replication
- Technical requirements
- Understanding the basic concepts of logical replication
- Comparing logical replication and physical replication
- Exploring a logical replication setup and new logical replication features on PostgreSQL 16
- Summary
- Verify your knowledge
- References
- Learn more on Discord
- Useful Tools and Extensions
- Other Books You May Enjoy
- Index
Product information
- Title: Learn PostgreSQL - Second Edition
- Author(s):
- Release date: October 2023
- Publisher(s): Packt Publishing
- ISBN: 9781837635641
You might also like
book
Learn PostgreSQL
A comprehensive guide to building, managing, and securing scalable and reliable database and data warehousing applications …
book
PostgreSQL: Up and Running, 3rd Edition
Thinking of migrating to PostgreSQL? This clear, fast-paced introduction helps you understand and use this open …
book
Learning SQL, 3rd Edition
As data floods into your company, you need to put it to work right away—and SQL …
book
Practical SQL, 2nd Edition
Practical SQL is an approachable and fast-paced guide to SQL (Structured Query Language), the standard programming …