Часть III. Администрирование сервера

В этой части документации освещаются темы, представляющие интерес для администратора баз данных Postgres Pro. В частности, здесь рассматривается установка программного обеспечения, установка и настройка сервера, управление пользователями и базами данных, а также задачи обслуживания. С этими темами следует ознакомиться всем, кто эксплуатирует сервер Postgres Pro (даже для личных целей, а тем более в производственной среде).

Материал этой части даётся примерно в том порядке, в каком его следует читать начинающему пользователю. При этом её главы самодостаточны и при желании могут быть прочитаны по отдельности. Информация в этой части книги представлена в повествовательном стиле и разделена по темам. Если же вас интересует формальное и полное описание определённой команды, см. Часть VI.

Первые несколько глав написаны так, чтобы их можно было понять без предварительных знаний, так что начинающие пользователи, которым нужно установить свой собственный сервер, могут начать свой путь с них. Остальные главы части посвящены настройке сервера и управлению им; в этом материале подразумевается, что читатель знаком с основными принципами использования СУБД Postgres Pro. За дополнительной информацией мы рекомендуем читателям обратиться к Части I и Части II.

Содержание

17. Установка из двоичных пакетов
17.1. Установка Postgres Pro Enterprise в Linux
17.2. Установка Postgres Pro Enterprise в Windows
17.3. Установка дополнительно поставляемых модулей
17.4. Миграция на Postgres Pro
18. Подготовка к работе и сопровождение сервера
18.1. Учётная запись пользователя Postgres Pro
18.2. Создание кластера баз данных
18.3. Запуск сервера баз данных
18.4. Управление ресурсами ядра
18.5. Выключение сервера
18.6. Обновление кластера Postgres Pro
18.7. Защита от подмены сервера
18.8. Возможности шифрования
18.9. Защита соединений TCP/IP с применением SSL
18.10. Защита соединений TCP/IP с применением GSSAPI
18.11. Защита соединений TCP/IP с применением туннелей SSH
18.12. Регистрация журнала событий в Windows
19. Конфигурация сервера
19.1. Изменение параметров
19.2. Расположения файлов
19.3. Подключения и аутентификация
19.4. Потребление ресурсов
19.5. Журнал предзаписи
19.6. Репликация
19.7. Планирование запросов
19.8. Регистрация ошибок и протоколирование работы сервера
19.9. Статистика времени выполнения
19.10. Автоматическая очистка
19.11. Параметры клиентских сеансов по умолчанию
19.12. Управление блокировками
19.13. Совместимость с разными версиями и платформами
19.14. Очистка памяти
19.15. Сжатие данных
19.16. Обработка ошибок
19.17. Предопределённые параметры
19.18. Внесистемные параметры
19.19. Параметры для разработчиков
19.20. Краткие аргументы
20. Аутентификация клиентского приложения
20.1. Файл pg_hba.conf
20.2. Файл сопоставления имён пользователей
20.3. Методы аутентификации
20.4. Аутентификация trust
20.5. Аутентификация password
20.6. Аутентификация GSSAPI
20.7. Аутентификация SSPI
20.8. Аутентификация ident
20.9. Аутентификация peer
20.10. Аутентификация LDAP
20.11. Аутентификация RADIUS
20.12. Аутентификация по сертификату
20.13. Аутентификация PAM
20.14. Аутентификация BSD
20.15. Проблемы аутентификации
21. Роли базы данных
21.1. Роли базы данных
21.2. Атрибуты ролей
21.3. Членство в роли
21.4. Удаление ролей
21.5. Предопределённые роли
21.6. Безопасность функций
22. Управление базами данных
22.1. Обзор
22.2. Создание базы данных
22.3. Шаблоны баз данных
22.4. Конфигурирование баз данных
22.5. Удаление базы данных
22.6. Табличные пространства
23. Локализация
23.1. Поддержка языковых стандартов
23.2. Поддержка правил сортировки
23.3. Поддержка кодировок
24. Регламентные задачи обслуживания базы данных
24.1. Регламентная очистка
24.2. Регулярная переиндексация
24.3. Обслуживание журнала
25. Резервное копирование и восстановление
25.1. Выгрузка в SQL
25.2. Резервное копирование на уровне файлов
25.3. Непрерывное архивирование и восстановление на момент времени (Point-in-Time Recovery, PITR)
26. Отказоустойчивость, балансировка нагрузки и репликация
26.1. Сравнение различных решений
26.2. Трансляция журналов на резервные серверы
26.3. Отработка отказа
26.4. Горячий резерв
27. Мониторинг работы СУБД
27.1. Стандартные инструменты Unix
27.2. Сборщик статистики
27.3. Просмотр информации о блокировках
27.4. Отслеживание выполнения
28. Мониторинг использования диска
28.1. Определение использования диска
28.2. Ошибка переполнения диска
29. Надёжность и журнал предзаписи
29.1. Надёжность
29.2. Контрольные суммы данных
29.3. Журнал предзаписи (WAL)
29.4. Асинхронное подтверждение транзакций
29.5. Настройка WAL
29.6. Исправление повреждённых записей WAL
29.7. Внутреннее устройство WAL
30. Логическая репликация
30.1. Публикация
30.2. Подписка
30.3. Конфликты
30.4. Ограничения
30.5. Архитектура
30.6. Мониторинг
30.7. Безопасность
30.8. Параметры конфигурации
30.9. Быстрая настройка
31. JIT-компиляция
31.1. Что такое JIT-компиляция?
31.2. Когда применять JIT?
31.3. Конфигурация
31.4. Расширяемость
32. Улучшенная безопасность
32.1. Очистка памяти
32.2. Проверки целостности
32.3. Разграничение прав между привилегированными пользователями СУБД
33. Сжатая файловая система (CFS)
33.1. Когда сжатие баз данных может быть полезным?
33.2. Как сжатие интегрируется в Postgres Pro Enterprise
33.3. Использование сжатия
34. Встроенный пул соединений
34.1. Ограничения
34.2. Как это работает
34.3. Настройка встроенного пула соединений
35. Устранение неполадок

Part III. Server Administration

This part covers topics that are of interest to a Postgres Pro database administrator. This includes installation of the software, set up and configuration of the server, management of users and databases, and maintenance tasks. Anyone who runs a Postgres Pro server, even for personal use, but especially in production, should be familiar with the topics covered in this part.

The information in this part is arranged approximately in the order in which a new user should read it. But the chapters are self-contained and can be read individually as desired. The information in this part is presented in a narrative fashion in topical units. Readers looking for a complete description of a particular command should see Part VI.

The first few chapters are written so they can be understood without prerequisite knowledge, so new users who need to set up their own server can begin their exploration with this part. The rest of this part is about tuning and management; that material assumes that the reader is familiar with the general use of the Postgres Pro database system. Readers are encouraged to look at Part I and Part II for additional information.

Table of Contents

17. Binary Installation
17.1. Installing Postgres Pro Enterprise on Linux
17.2. Installing Postgres Pro Enterprise on Windows
17.3. Installing Additional Supplied Modules
17.4. Migrating to Postgres Pro
18. Server Setup and Operation
18.1. The Postgres Pro User Account
18.2. Creating a Database Cluster
18.3. Starting the Database Server
18.4. Managing Kernel Resources
18.5. Shutting Down the Server
18.6. Upgrading a Postgres Pro Cluster
18.7. Preventing Server Spoofing
18.8. Encryption Options
18.9. Secure TCP/IP Connections with SSL
18.10. Secure TCP/IP Connections with GSSAPI Encryption
18.11. Secure TCP/IP Connections with SSH Tunnels
18.12. Registering Event Log on Windows
19. Server Configuration
19.1. Setting Parameters
19.2. File Locations
19.3. Connections and Authentication
19.4. Resource Consumption
19.5. Write Ahead Log
19.6. Replication
19.7. Query Planning
19.8. Error Reporting and Logging
19.9. Run-time Statistics
19.10. Automatic Vacuuming
19.11. Client Connection Defaults
19.12. Lock Management
19.13. Version and Platform Compatibility
19.14. Memory Purge
19.15. Data Compression
19.16. Error Handling
19.17. Preset Options
19.18. Customized Options
19.19. Developer Options
19.20. Short Options
20. Client Authentication
20.1. The pg_hba.conf File
20.2. User Name Maps
20.3. Authentication Methods
20.4. Trust Authentication
20.5. Password Authentication
20.6. GSSAPI Authentication
20.7. SSPI Authentication
20.8. Ident Authentication
20.9. Peer Authentication
20.10. LDAP Authentication
20.11. RADIUS Authentication
20.12. Certificate Authentication
20.13. PAM Authentication
20.14. BSD Authentication
20.15. Authentication Problems
21. Database Roles
21.1. Database Roles
21.2. Role Attributes
21.3. Role Membership
21.4. Dropping Roles
21.5. Predefined Roles
21.6. Function Security
22. Managing Databases
22.1. Overview
22.2. Creating a Database
22.3. Template Databases
22.4. Database Configuration
22.5. Destroying a Database
22.6. Tablespaces
23. Localization
23.1. Locale Support
23.2. Collation Support
23.3. Character Set Support
24. Routine Database Maintenance Tasks
24.1. Routine Vacuuming
24.2. Routine Reindexing
24.3. Log File Maintenance
25. Backup and Restore
25.1. SQL Dump
25.2. File System Level Backup
25.3. Continuous Archiving and Point-in-Time Recovery (PITR)
26. High Availability, Load Balancing, and Replication
26.1. Comparison of Different Solutions
26.2. Log-Shipping Standby Servers
26.3. Failover
26.4. Hot Standby
27. Monitoring Database Activity
27.1. Standard Unix Tools
27.2. The Statistics Collector
27.3. Viewing Locks
27.4. Progress Reporting
28. Monitoring Disk Usage
28.1. Determining Disk Usage
28.2. Disk Full Failure
29. Reliability and the Write-Ahead Log
29.1. Reliability
29.2. Data Checksums
29.3. Write-Ahead Logging (WAL)
29.4. Asynchronous Commit
29.5. WAL Configuration
29.6. WAL Restoration
29.7. WAL Internals
30. Logical Replication
30.1. Publication
30.2. Subscription
30.3. Conflicts
30.4. Restrictions
30.5. Architecture
30.6. Monitoring
30.7. Security
30.8. Configuration Settings
30.9. Quick Setup
31. Just-in-Time Compilation (JIT)
31.1. What Is JIT compilation?
31.2. When to JIT?
31.3. Configuration
31.4. Extensibility
32. Enhanced Security
32.1. Memory Purge
32.2. Integrity Checks
32.3. Separation of Duties between Privileged DBMS Users
33. Compressed File System (CFS)
33.1. Why database compression may be useful
33.2. How compression is integrated in Postgres Pro Enterprise
33.3. Using Compression
34. Built-In Connection Pooling
34.1. Limitations
34.2. How It Works
34.3. Configuring Built-in Connection Pooler
35. Troubleshooting
FAQ