Book Image

PostgreSQL 13 Cookbook

By : Vallarapu Naga Avinash Kumar
Book Image

PostgreSQL 13 Cookbook

By: Vallarapu Naga Avinash Kumar

Overview of this book

PostgreSQL has become the most advanced open source database on the market. This book follows a step-by-step approach, guiding you effectively in deploying PostgreSQL in production environments. The book starts with an introduction to PostgreSQL and its architecture. You’ll cover common and not-so-common challenges faced while designing and managing the database. Next, the book focuses on backup and recovery strategies to ensure your database is steady and achieves optimal performance. Throughout the book, you’ll address key challenges such as maintaining reliability, data integrity, a fault-tolerant environment, a robust feature set, extensibility, consistency, and authentication. Moving ahead, you’ll learn how to manage a PostgreSQL cluster and explore replication features for high availability. Later chapters will assist you in building a secure PostgreSQL server, along with covering recipes for encrypting data in motion and data at rest. Finally, you’ll not only discover how to tune your database for optimal performance but also understand ways to monitor and manage maintenance activities, before learning how to perform PostgreSQL upgrades during downtime. By the end of this book, you’ll be well-versed with the essential PostgreSQL 13 features to build enterprise relational databases.
Table of Contents (14 chapters)
12
About Packt

Initializing a PostgreSQL cluster using initdb

Now that we've installed Postgres, we need to choose a directory where the data directory can be created. This data directory will be used to store the databases and the underlying objects we create. To create a data directory, we must use initdb. In this recipe, we shall see the steps involved in initializing a PostgreSQL cluster using initdb.

Getting ready

The postgresql13-server package must be installed on the database server for us to use initdb. Follow the previous recipe to perform the installation. $PGDATA is the environment variable used by Postgres to identify its data directory. This variable can be optionally set in .bash_profile of the Postgres home directory to avoid passing the data directory location to initdb.

How to do it...

In this recipe, we will be using the default data directory for PostgreSQL 13 on CentOS/RedHat and using initdb to initialize the data directory. Let's get started:

  1. Set the location of...