- Course Length:
- 5 Days
- Course Description:
- This course covers administration, performance, advanced development, and replication—into a continuous sequence. Hands-on workshop exercises are provided for the performance and replication classes. Students are encouraged to ask questions about features the instructor can demonstrate at any time. The examples target PostgreSQL versions 9.0 and 9.1. Instructors for this class know PostgreSQL works at a deep level, including the common challenges when the database is deployed onto real-world production systems at scale. The ideal student will not just want to know what to do with PostgreSQL, they'll want to understand how the database works and makes its decisions.
- Who Should Attend:
- This course is for database administrators, systems administrators, or developers with working knowledge of database usage.
- Benefits of Attendance:
-
Upon completion of this course, students will be able to:
- Start and stop a PostgreSQL server
- Change the configuration of the database
- Create users and restrict what they are able to do
- Execute SQL queries on the server
- Monitor database activity and statistics
- Understand what background maintenance the database does automatically
- Setup a test environment with sample data
- Look for problems in the server's log files
- Find the free and commercial resources for PostgreSQL issues
- Setup the server postgresql.conf for a production system
- Look for performance issues caused by locking
- Recognize unique PostgreSQL design features that developers can utilize
- Read the output of a query plan
- Adjust how the server executes joins between tables
- Monitor which queries are using up the most server resources
- Add and remove table indexes based on a production workload
- Create and restore a snapshot backup of a PostgreSQL server
- Deploy a high-availability standby replica
- Understand the replication scripting hooks used for customizing behavior
- Monitor whether a replica is keeping up with the master's traffic
- Switch to a standby system when the master fails
- Automate server management using the repmgr tool
- Determine which queries might be answered from a read-only replica
- Outline popular architectures for scaling a PostgreSQL server across multiple nodes
- Prerequisites:
- Students must have a working knowledge of SQL. Using the command line interface to a Linux system and some basic UNIX shell programming experience is needed to complete all of the replication workshop exercises.
- Course Outline:
-
- Database Administration
- Connecting & Troubleshooting
- PgAdmin III Overview
- Server Configuration
- Database Administration
- User Administration
- Understanding Database Object Types
- Permissions & Security
- Running SQL
- Monitoring
- MVCC and VACUUM
- Maintenance
- Data Migration & Test Environments
- Server Logs
- Help & Support
- Advanced Development & Performance
- Server Architecture & Caching
- Tuning Parameters
- MVCC, VACUUM and HOT
- Locking & Concurrency
- Database design alternatives
- Advanced Development Summary
- Reading EXPLAINs
- Workload Analysis, Benchmarking and Profiling
- Join Planning
- Indexes
- SQL Performance Tips & Tricks
- PostgreSQL 9 Replication & Recovery
- pg_dump and restore options
- PITR Backup and Recovery
- Replication Concepts
- High Availability options
- Streaming Replication
- Managing clusters using repmgr
- Hot Standby
- Synchronous Replication
- File based Log Shipping
- Introduction to Slony & Londiste
- Connection Pooling
- Upgrading PostgreSQL
- Sharding and Scale Out
- Database Administration


















