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

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

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

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

Содержание

15. Установка из исходного кода
15.1. Краткий вариант
15.2. Требования
15.3. Получение исходного кода
15.4. Процедура установки
15.5. Действия после установки
15.6. Поддерживаемые платформы
15.7. Замечания по отдельным платформам
16. Установка из исходного кода в Windows
16.1. Сборка с помощью Visual C++ или Microsoft Windows SDK
16.2. Сборка libpq с помощью Visual C++ или Borland C++
17. Подготовка к работе и сопровождение сервера
17.1. Учётная запись пользователя Postgres Pro
17.2. Создание кластера баз данных
17.3. Запуск сервера баз данных
17.4. Управление ресурсами ядра
17.5. Выключение сервера
17.6. Обновление кластера Postgres Pro
17.7. Защита от подмены сервера
17.8. Возможности шифрования
17.9. Защита соединений TCP/IP с применением SSL
17.10. Защита соединений TCP/IP с применением туннелей SSH
17.11. Регистрация журнала событий в Windows
18. Настройка сервера
18.1. Изменение параметров
18.2. Расположения файлов
18.3. Подключения и аутентификация
18.4. Потребление ресурсов
18.5. Журнал предзаписи
18.6. Репликация
18.7. Планирование запросов
18.8. Регистрация ошибок и протоколирование работы сервера
18.9. Статистика времени выполнения
18.10. Автоматическая очистка
18.11. Параметры клиентских сеансов по умолчанию
18.12. Управление блокировками
18.13. Совместимость с разными версиями и платформами
18.14. Обработка ошибок
18.15. Предопределённые параметры
18.16. Внесистемные параметры
18.17. Параметры для разработчиков
18.18. Краткие аргументы
19. Аутентификация клиентского приложения
19.1. Файл pg_hba.conf
19.2. Файл сопоставления имён пользователей
19.3. Методы аутентификации
19.4. Проблемы аутентификации
20. Роли базы данных
20.1. Роли базы данных
20.2. Атрибуты ролей
20.3. Членство в роли
20.4. Удаление ролей
20.5. Безопасность функций
21. Управление базами данных
21.1. Обзор
21.2. Создание базы данных
21.3. Шаблоны баз данных
21.4. Конфигурирование баз данных
21.5. Удаление базы данных
21.6. Табличные пространства
22. Локализация
22.1. Поддержка языковых стандартов
22.2. Поддержка правил сортировки
22.3. Поддержка кодировок
23. Регламентные задачи обслуживания базы данных
23.1. Регламентная очистка
23.2. Регулярная переиндексация
23.3. Обслуживание журнала
24. Резервное копирование и восстановление
24.1. Выгрузка в SQL
24.2. Резервное копирование на уровне файлов
24.3. Непрерывное архивирование и восстановление на момент времени (Point-in-Time Recovery, PITR)
25. Отказоустойчивость, балансировка нагрузки и репликация
25.1. Сравнение различных решений
25.2. Трансляция журналов на резервные серверы
25.3. Отработка отказа
25.4. Другие методы трансляции журнала
25.5. Горячий резерв
26. Конфигурация восстановления
26.1. Параметры восстановления из архива
26.2. Параметры управления восстановлением
26.3. Параметры резервного сервера
27. Мониторинг работы СУБД
27.1. Стандартные инструменты Unix
27.2. Сборщик статистики
27.3. Просмотр информации о блокировках
27.4. Динамическая трассировка
28. Мониторинг использования диска
28.1. Определение использования диска
28.2. Ошибка переполнения диска
29. Надёжность и журнал предзаписи
29.1. Надёжность
29.2. Журнал предзаписи (WAL)
29.3. Асинхронное подтверждение транзакций
29.4. Настройка WAL
29.5. Внутреннее устройство WAL
30. Регрессионные тесты
30.1. Выполнение тестов
30.2. Оценка результатов тестирования
30.3. Вариативные сравнительные файлы
30.4. Тесты TAP
30.5. Проверка покрытия теста

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

15. Installation from Source Code
15.1. Short Version
15.2. Requirements
15.3. Getting The Source
15.4. Installation Procedure
15.5. Post-Installation Setup
15.6. Supported Platforms
15.7. Platform-specific Notes
16. Installation from Source Code on Windows
16.1. Building with Visual C++ or the Microsoft Windows SDK
16.2. Building libpq with Visual C++ or Borland C++
17. Server Setup and Operation
17.1. The Postgres Pro User Account
17.2. Creating a Database Cluster
17.3. Starting the Database Server
17.4. Managing Kernel Resources
17.5. Shutting Down the Server
17.6. Upgrading a Postgres Pro Cluster
17.7. Preventing Server Spoofing
17.8. Encryption Options
17.9. Secure TCP/IP Connections with SSL
17.10. Secure TCP/IP Connections with SSH Tunnels
17.11. Registering Event Log on Windows
18. Server Configuration
18.1. Setting Parameters
18.2. File Locations
18.3. Connections and Authentication
18.4. Resource Consumption
18.5. Write Ahead Log
18.6. Replication
18.7. Query Planning
18.8. Error Reporting and Logging
18.9. Run-time Statistics
18.10. Automatic Vacuuming
18.11. Client Connection Defaults
18.12. Lock Management
18.13. Version and Platform Compatibility
18.14. Error Handling
18.15. Preset Options
18.16. Customized Options
18.17. Developer Options
18.18. Short Options
19. Client Authentication
19.1. The pg_hba.conf File
19.2. User Name Maps
19.3. Authentication Methods
19.4. Authentication Problems
20. Database Roles
20.1. Database Roles
20.2. Role Attributes
20.3. Role Membership
20.4. Dropping Roles
20.5. Function Security
21. Managing Databases
21.1. Overview
21.2. Creating a Database
21.3. Template Databases
21.4. Database Configuration
21.5. Destroying a Database
21.6. Tablespaces
22. Localization
22.1. Locale Support
22.2. Collation Support
22.3. Character Set Support
23. Routine Database Maintenance Tasks
23.1. Routine Vacuuming
23.2. Routine Reindexing
23.3. Log File Maintenance
24. Backup and Restore
24.1. SQL Dump
24.2. File System Level Backup
24.3. Continuous Archiving and Point-in-Time Recovery (PITR)
25. High Availability, Load Balancing, and Replication
25.1. Comparison of Different Solutions
25.2. Log-Shipping Standby Servers
25.3. Failover
25.4. Alternative Method for Log Shipping
25.5. Hot Standby
26. Recovery Configuration
26.1. Archive Recovery Settings
26.2. Recovery Target Settings
26.3. Standby Server Settings
27. Monitoring Database Activity
27.1. Standard Unix Tools
27.2. The Statistics Collector
27.3. Viewing Locks
27.4. Dynamic Tracing
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. Write-Ahead Logging (WAL)
29.3. Asynchronous Commit
29.4. WAL Configuration
29.5. WAL Internals
30. Regression Tests
30.1. Running the Tests
30.2. Test Evaluation
30.3. Variant Comparison Files
30.4. TAP Tests
30.5. Test Coverage Examination
FAQ