Postgres Administration

PostgreSQL Administration
=====

—–
Course Id : DATA-PGRS
Duration : 48 Hours

Overview
—–
* PostgreSQL is an open source object-relational database system and its commonly known as Postgres
* A DBA’s primary job is to ensure that data is available, protected from loss and corruption, and easily accessible as needed
* In this course you will learn how to build, query, administer, backup and secure PostgreSQL

Pre-Requisites
——-
* Participants should have the knowledge about SQL and Database concepts
* Knowledge of Linux environment is preferred

Training Objectives
——
* How to install and setup PostgreSQL
* Understand PostgreSQL Architecture
* How to create databases and database structures
* How to compile source code
* How to Perform backup and disaster recovery
* Work with inheritance, partitioning, and Tablespaces
* How to Manage free space
* How to Secure PostgreSQL
* How to create high availability and high performance solutions

Course Structure
—–
* We provide more focus on hands-on in our technical courses (typically 80% hands-on/20% theory)
* Students get the capability to apply the material they learn to real-world problems

Materials Provided
—–
* PDF of slides and hands-on exercises
* Access to instance with lab environment

Software Requirements
—–
* Any current internet browser

Hardware Requirements
—–
* Processor: 1.2 GHz
* RAM: 512 MB
* Disk space: 1 GB
* Network Connection with low latency (<250ms) to Internet

Course Outline
## Daywise course outline
—–
## Day 1
—–
* Unit 1 : PostgreSQL Introduction and Architecture
* Unit 2 : PostgreSQL Data Types
* Unit 3 : PostgreSQL Installation
* Unit 4 : PostgreSQL Configuration

## Day 2
—–
* Unit 5 : Introduction to psql
* Unit 6 : Functions and Operators
* Unit 7 : Managing PostgreSQL Databases
* Unit 8 : PostgreSQL Roles and Security

## Day 3
—–
* Unit 9 : Moving Data with PostgreSQL
* Unit 10 : Tablespaces, Inheritance and Data Partitioning
* Unit 11 : VACUUM
* Unit 12 : Transactions and Concurrency Control

## Day 4
—–
* Unit 13 : Routine DBA Tasks and Best Practices
* Unit 14 : Monitoring and Statistics
* Unit 15 : PostgreSQL Tools Overview
* Unit 16 : PostgreSQL Performance Tuning

## Day 5
—–
* Unit 17 : PostgreSQL Backup and Recovery
* Unit 18 : PostgreSQL Upgrade Methods
* Unit 19 : PostgreSQL Streaming Replication
* Unit 20 : SLONY

## Day 6
—–
* Unit 21 : PostgreSQL High Availability
* Unit 22 : PostgreSQL and AWS
* Unit 23 : PostgreSQL RDS Overview
* Unit 24 : PostgreSQL Redshift Overview
* Unit 25 : The PostgreSQL Contribs

## Detailed course outline
—–
Unit 1 : PostgreSQL Introduction and Architecture
—–
* Introduction and History
* PostgreSQL Major Features
* PostgreSQL Architecture Overview

Unit 2 : PostgreSQL Data Types
—–

Unit 3 : PostgreSQL Installation
—–
* Platforms
* Binary Installation
* Source Installation
* Binary vs. Source – Pros and cons
* Initializing a PostgreSQL Cluster
* Starting and Stopping a PostgreSQL Cluster
* Automatic Startup / Shutdown
* Common Issues and Troubleshooting

Unit 4 : PostgreSQL Configuration
—–
* Access Control
* The postgresql.conf file
* Common Issues and Troubleshooting

Unit 5 : Introduction to psql
—–
* Command line parameters
* Meta Commands
* SET Commands
* psql Security

Unit 6 : Functions and Operators
—–

Unit 7 : Managing PostgreSQL Databases
—–
* Creating PostgreSQL Databases
* Creating Schemas
* Creating Tables
* Altering Tables
* SELECT and Joins
* Indexes and Foreign Keys

Unit 8 : PostgreSQL Roles and Security
—–
* Views
* Rules
* Users, Groups and Roles
* Sequences
* Object Security

Unit 9 : Moving Data with PostgreSQL
—–
* Basic DML
* COPY
* Other Tools

Unit 10 : Tablespaces, Inheritance and Data Partitioning
—–
* Tablespaces
* Inheritance
* PostgreSQL Data Partitioning

Unit 11 : VACUUM
—–
* Routine Vacuuming
* Benefits of Vacuuming
* Recovering Disk Space
* Updating Planner Statistics
* Transaction ID Wraparound Failure

Unit 12 : Transactions and Concurrency Control
—–
* Transactions
* Concurrency

Unit 13 : Routine DBA Tasks and Best Practices
—–
* Log Management
* Query Analysis
* Routine Vacuuming
* Recovering Disk Space
* Managing Planner Statistics
* REINDEX

Unit 14 : Monitoring and Statistics
—–
* Database Logs
* OS Process Monitoring
* The PostgreSQL Statistics Collector
* Statistics Views
* Statistics Functions

Unit 15 : PostgreSQL Tools Overview
—–
* PG Badger
* PG Bouncer
* PG Pool
* PGCLUU
* PG Admin
* PG Modeler
* MySQL Workbench
* pgbench
* Consistent State PTS

Unit 16 : PostgreSQL Performance Tuning
—–
* OS Tuning
* HW Configuration
* Transaction Logs
* Tablespaces and Partitioning
* Checkpoint Tuning
* Query Tuning

Unit 17 : PostgreSQL Backup and Recovery
—–
* pg_dump
* pg_dumpall
* Recovery Options
* Restore via a List File
* Point In Time Recovery (PITR) Based Backup
* PITR Based Recovery

Unit 18 : PostgreSQL Upgrade Methods
—–
* Minor Version Upgrades
* pg_upgrade
* RPM Based Upgrade
* Source Based Upgrade
* SLONY Based Upgrade

Unit 19 : PostgreSQL Streaming Replication
—–
* Overview
* Configuration
* Base Backup
* Recovery.conf
* Initializing Streaming Replication
* Standby Conflicts
* Monitoring
* Standby Promotion
* Cascading Replication
* WAL Shipping
* Replication Slots
* Synchronous Replication

Unit 20 : SLONY
* Overview
* Configuration and Setup
* Monitoring
* Executing DDL
* Adding Tables to Replication
* Switchover
* Failover

Unit 21 : PostgreSQL High Availability
—–
* Overview
* Replication Type Selection
* Connection Poolers
* Heartbeat Monitoring
* Failing Over
* Failing Back

Unit 22 : PostgreSQL and AWS
—–

Unit 23 : PostgreSQL RDS Overview
—–

Unit 24 : PostgreSQL Redshift Overview
—–

Unit 25 : The PostgreSQL Contribs
—–

Scroll to top