Tantor BE#
Оглавление:
- Введение
- Часть I. Руководство
- Часть II. Язык SQL
- Глава 4. SQL Синтаксис
- Глава 5. Определение данных
- 5.1. Основы таблицы
- 5.2. Значения по умолчанию
- 5.3. Идентификационные столбцы
- 5.4. Генерируемые столбцы
- 5.5. Ограничения
- 5.6. Системные столбцы
- 5.7. Изменение таблиц
- 5.8. Привилегии
- 5.9. Политики защиты строк
- 5.10. Схемы
- 5.11. Наследование
- 5.12. Секционирование таблиц
- 5.13. Внешние данные
- 5.14. Другие объекты базы данных
- 5.15. Отслеживание зависимостей
- Глава 6. Операции с данными
- Глава 7. Запросы
- Глава 8. Типы данных
- 8.1. Числовые типы
- 8.2. Типы денежных единиц
- 8.3. Типы символов
- 8.4. Бинарные типы данных
- 8.5. Типы даты/времени
- 8.6. Тип Boolean
- 8.7. Перечисляемые типы
- 8.8. Геометрические типы
- 8.9. Типы сетевых адресов
- 8.10. Типы битовых строк
- 8.11. Типы текстового поиска
- 8.12. UUID Тип
- 8.13. Тип XML
- 8.14. Типы JSON
- 8.15. Массивы
- 8.16. Составные типы
- 8.17. Типы диапазонов
- 8.18. Типы доменов
- 8.19. Типы идентификаторов объектов
- 8.20. Тип pg_lsn
- 8.21. Псевдо-типы
- Глава 9. Функции и операторы
- 9.1. Логические операторы
- 9.2. Функции и операторы сравнения
- 9.3. Математические функции и операторы
- 9.4. Функции и операторы строк
- 9.5. Функции и операторы для работы с бинарными строками
- 9.6. Функции и операторы для битовых строк
- 9.7. Сопоставление шаблонов
- 9.8. Функции форматирования типов данных
- 9.9. Функции и операторы даты/времени
- 9.10. Функции поддержки перечислений
- 9.11. Геометрические функции и операторы
- 9.12. Функции и операторы сетевых адресов
- 9.13. Функции и операторы текстового поиска
- 9.14. Функции UUID
- 9.15. Функции XML
- 9.16. Функции и операторы JSON
- 9.17. Функции манипуляции последовательностями
- 9.18. Условные выражения
- 9.19. Функции и операторы массивов
- 9.20. Функции и операторы диапазонов/мультидиапазонов
- 9.21. Агрегатные функции
- 9.22. Оконные функции
- 9.23. Функции поддержки слияния
- 9.24. Подзапросы
- 9.25. Сравнения строк и массивов
- 9.26. Функции, возвращающие наборы значений
- 9.27. Функции и операторы системной информации
- 9.28. Функции системного администрирования
- 9.29. Функции триггеров
- 9.30. Функции триггеров событий
- 9.31. Функции статистической информации
- Глава 10. Преобразование типов
- Глава 11. Индексы
- 11.1. Введение
- 11.2. Типы индексов
- 11.3. Многоколоночные индексы
- 11.4. Индексы и ORDER BY
- 11.5. Сочетание нескольких индексов
- 11.6. Уникальные индексы
- 11.7. Индексы на выражениях
- 11.8. Частичные индексы
- 11.9. Сканирование только индексов и покрывающие индексы
- 11.10. Классы операторов и семейства операторов
- 11.11. Индексы и правила сортировки
- 11.12. Изучение использования индексов
- Глава 12. Полнотекстовый поиск
- 12.1. Введение
- 12.2. Таблицы и индексы
- 12.3. Управление полнотекстовым поиском
- 12.4. Дополнительные возможности
- 12.5. Парсеры
- 12.6. Словари
- 12.7. Пример конфигурации
- 12.8. Тестирование и отладка текстового поиска
- 12.9. Предпочтительные типы индексов для текстового поиска
- 12.10. Поддержка psql
- 12.11. Ограничения
- Глава 13. Контроль параллельности
- Глава 14. Советы по производительности
- Глава 15. Параллельный запрос
- Часть III. Администрирование сервера
- Глава 16. Установка из бинарных файлов
- Глава 17. Настройка и работа сервера
- 17.1. Учетная запись пользователя Tantor BE
- 17.2. Создание кластера базы данных
- 17.3. Запуск сервера базы данных
- 17.4. Управление ресурсами ядра
- 17.5. Выключение сервера
- 17.6. Обновление кластера Tantor BE
- 17.7. Предотвращение подделки сервера
- 17.8. Опции шифрования
- 17.9. Безопасные TCP/IP-соединения с использованием SSL
- 17.10. Безопасные TCP/IP-соединения с шифрованием GSSAPI
- 17.11. Безопасные соединения TCP/IP с туннелями SSH
- Глава 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. Аутентификация trust
- 19.5. Аутентификация по паролю
- 19.6. Аутентификация GSSAPI
- 19.7. Aутентификации ident
- 19.8. Аутентификация peer
- 19.9. Аутентификация LDAP
- 19.10. Аутентификация RADIUS
- 19.11. Аутентификация по сертификату
- 19.12. Аутентификация PAM
- 19.13. Проблемы аутентификации
- Глава 20. Роли базы данных
- Глава 21. Управление базами данных
- Глава 22. Локализация
- Глава 23. Регулярные задачи по обслуживанию базы данных
- Глава 24. Резервное копирование и восстановление
- Глава 25. Высокая доступность, балансировка нагрузки и репликация
- Глава 26. Мониторинг активности базы данных
- Глава 27. Надежность и журнал предварительной записи
- Глава 28. Логическая репликация
- Глава 29. Компиляция в режиме Just-In-Time (JIT)
- Часть IV. Клиентские интерфейсы
- Глава 30. libpq — C Библиотека
- 30.1. Функции управления подключением к базе данных
- 30.2. Функции статуса подключения
- 30.3. Функции выполнения команд
- 30.4. Асинхронная обработка команд
- 30.5. Режим конвейера
- 30.6. Получение результатов запроса частями
- 30.7. Отмена выполняющихся запросов
- 30.8. Интерфейс Fast-Path
- 30.9. Асинхронное уведомление
- 30.10. Функции, связанные с командой COPY
- 30.11. Функции управления
- 30.12. Различные функции
- 30.13. Обработка уведомлений
- 30.14. Система событий
- 30.15. Переменные среды
- 30.16. Файл паролей
- 30.17. Файл службы подключения
- 30.18. Поиск параметров подключения LDAP
- 30.19. Поддержка SSL
- 30.20. Поведение в многопоточных программах
- 30.21. Создание программ с использованием libpq
- 30.22. Примеры программ
- Глава 31. Большие объекты
- Глава 32. ECPG — Встроенный SQL в C
- 32.1. Концепция
- 32.2. Управление подключениями к базе данных
- 32.3. Выполнение SQL-команд
- 32.4. Использование переменных хоста
- 32.5. Динамический SQL
- 32.6. Библиотека pgtypes
- 32.7. Использование областей дескрипторов
- 32.8. Обработка ошибок
- 32.9. Препроцессорные директивы
- 32.10. Обработка встроенных программ SQL
- 32.11. Библиотечные функции
- 32.12. Большие объекты
- 32.13. Приложения C++
- 32.14. Встроенные SQL-команды
- 32.15. Режим совместимости с Informix
- 32.16. Режим совместимости Oracle
- 32.17. Внутреннее устройство
- Глава 33. Информационная схема
- 33.1. Схема
- 33.2. Типы данных
- 33.3. information_schema_catalog_name
- 33.4. administrable_role_authorizations
- 33.5. applicable_roles
- 33.6. attributes
- 33.7. character_sets
- 33.8. check_constraint_routine_usage
- 33.9. check_constraints
- 33.10. collations
- 33.11. collation_character_set_applicability
- 33.12. column_column_usage
- 33.13. column_domain_usage
- 33.14. column_options
- 33.15. column_privileges
- 33.16. column_udt_usage
- 33.17. columns
- 33.18. constraint_column_usage
- 33.19. constraint_table_usage
- 33.20. data_type_privileges
- 33.21. domain_constraints
- 33.22. domain_udt_usage
- 33.23. domains
- 33.24. element_types
- 33.25. enabled_roles
- 33.26. foreign_data_wrapper_options
- 33.27. foreign_data_wrappers
- 33.28. foreign_server_options
- 33.29. foreign_servers
- 33.30. foreign_table_options
- 33.31. foreign_tables
- 33.32. key_column_usage
- 33.33. parameters
- 33.34. referential_constraints
- 33.35. role_column_grants
- 33.36. role_routine_grants
- 33.37. role_table_grants
- 33.38. role_udt_grants
- 33.39. role_usage_grants
- 33.40. routine_column_usage
- 33.41. routine_privileges
- 33.42. routine_routine_usage
- 33.43. routine_sequence_usage
- 33.44. routine_table_usage
- 33.45. routines
- 33.46. schemata
- 33.47. sequences
- 33.48. sql_features
- 33.49. sql_implementation_info
- 33.50. sql_parts
- 33.51. sql_sizing
- 33.52. table_constraints
- 33.53. table_privileges
- 33.54. tables
- 33.55. transforms
- 33.56. triggered_update_columns
- 33.57. triggers
- 33.58. udt_privileges
- 33.59. usage_privileges
- 33.60. user_defined_types
- 33.61. user_mapping_options
- 33.62. user_mappings
- 33.63. view_column_usage
- 33.64. view_routine_usage
- 33.65. view_table_usage
- 33.66. views
- Глава 30. libpq — C Библиотека
- Часть V. Программирование сервера
- Глава 34. Расширение SQL
- 34.1. Как работает расширяемость
- 34.2. Типовая система Tantor BE
- 34.3. Пользовательские функции
- 34.4. Пользовательские процедуры
- 34.5. Функции языка запросов (SQL)
- 34.6. Перегрузка функций
- 34.7. Категории волатильности функций
- 34.8. Функции процедурного языка
- 34.9. Внутренние функции
- 34.10. Информация об оптимизации функций
- 34.11. Пользовательские агрегаты
- 34.12. Пользовательские типы данных
- 34.13. Пользовательские операторы
- 34.14. Информация об оптимизации операторов
- 34.15. Интерфейсные расширения для индексов
- 34.16. Упаковка связанных объектов в расширение
- 34.17. Инфраструктура создания расширений
- Глава 35. Триггеры
- Глава 36. Триггеры событий
- Глава 37. Система правил
- Глава 38. Процедурные языки
- Глава 39. PL/pgSQL — SQL Процедурный Язык
- 39.1. Обзор
- 39.2. Структура PL/pgSQL
- 39.3. Объявления
- 39.4. Выражения
- 39.5. Основные операторы
- 39.6. Структуры управления
- 39.7. Курсоры
- 39.8. Управление транзакциями
- 39.9. Ошибки и сообщения
- 39.10. Функции триггеров
- 39.11. PL/pgSQL под капотом
- 39.12. Советы по разработке в PL/pgSQL
- 39.13. Перенос из PL/SQL Oracle
- Глава 40. PL/Tcl — Tcl Процедурный Язык
- 40.1. Обзор
- 40.2. Функции и аргументы PL/Tcl
- 40.3. Значения данных в PL/Tcl
- 40.4. Глобальные данные в PL/Tcl
- 40.5. Доступ к базе данных из PL/Tcl
- 40.6. Функции триггеров в PL/Tcl
- 40.7. Функции триггеров событий в PL/Tcl
- 40.8. Обработка ошибок в PL/Tcl
- 40.9. Явные подтранзакции в PL/Tcl
- 40.10. Управление транзакциями
- 40.11. Конфигурация PL/Tcl
- 40.12. Имена процедур Tcl
- Глава 41. PL/Perl — Perl Процедурный Язык
- Глава 42. PL/Python — Язык программирования Python для процедурного программирования
- Глава 43. Интерфейс программирования сервера
- Глава 44. Фоновые рабочие процессы
- Глава 45. Логическое декодирование
- 45.1. Примеры логического декодирования
- 45.2. Концепции логического декодирования
- 45.3. Интерфейс протокола потоковой репликации
- 45.4. Интерфейс логического декодирования SQL
- 45.5. Системные каталоги, связанные с логическим декодированием
- 45.6. Выходные плагины логического декодирования
- 45.7. Писатели вывода логического декодирования
- 45.8. Поддержка синхронной репликации для логического декодирования
- 45.9. Потоковая передача больших транзакций для логического декодирования
- 45.10. Поддержка двухфазного коммита для логического декодирования
- Глава 46. Отслеживание прогресса репликации
- Глава 47. Модули архивации
- Глава 34. Расширение SQL
- Часть VI. Справка
- Часть VII. Внутреннее устройство
- Глава 48. Обзор внутреннего устройства PostgreSQL
- Глава 49. Системные каталоги
- 49.1. Обзор
- 49.2. pg_aggregate
- 49.3. pg_am
- 49.4. pg_amop
- 49.5. pg_amproc
- 49.6. pg_attrdef
- 49.7. pg_attribute
- 49.8. pg_authid
- 49.9. pg_auth_members
- 49.10. pg_cast
- 49.11. pg_class
- 49.12. pg_collation
- 49.13. pg_constraint
- 49.14. pg_conversion
- 49.15. pg_database
- 49.16. pg_db_role_setting
- 49.17. pg_default_acl
- 49.18. pg_depend
- 49.19. pg_description
- 49.20. pg_enum
- 49.21. pg_event_trigger
- 49.22. pg_extension
- 49.23. pg_foreign_data_wrapper
- 49.24. pg_foreign_server
- 49.25. pg_foreign_table
- 49.26. pg_index
- 49.27. pg_inherits
- 49.28. pg_init_privs
- 49.29. pg_language
- 49.30. pg_largeobject
- 49.31. pg_largeobject_metadata
- 49.32. pg_namespace
- 49.33. pg_opclass
- 49.34. pg_operator
- 49.35. pg_opfamily
- 49.36. pg_parameter_acl
- 49.37. pg_partitioned_table
- 49.38. pg_policy
- 49.39. pg_proc
- 49.40. pg_publication
- 49.41. pg_publication_namespace
- 49.42. pg_publication_rel
- 49.43. pg_range
- 49.44. pg_replication_origin
- 49.45. pg_rewrite
- 49.46. pg_seclabel
- 49.47. pg_sequence
- 49.48. pg_shdepend
- 49.49. pg_shdescription
- 49.50. pg_shseclabel
- 49.51. pg_statistic
- 49.52. pg_statistic_ext
- 49.53. pg_statistic_ext_data
- 49.54. pg_subscription
- 49.55. pg_subscription_rel
- 49.56. pg_tablespace
- 49.57. pg_transform
- 49.58. pg_trigger
- 49.59. pg_ts_config
- 49.60. pg_ts_config_map
- 49.61. pg_ts_dict
- 49.62. pg_ts_parser
- 49.63. pg_ts_template
- 49.64. pg_type
- 49.65. pg_user_mapping
- Глава 50. Системные представления
- 50.1. Обзор
- 50.2. pg_available_extensions
- 50.3. pg_available_extension_versions
- 50.4. pg_backend_memory_contexts
- 50.5. pg_config
- 50.6. pg_cursors
- 50.7. pg_file_settings
- 50.8. pg_group
- 50.9. pg_hba_file_rules
- 50.10. pg_ident_file_mappings
- 50.11. pg_indexes
- 50.12. pg_locks
- 50.13. pg_matviews
- 50.14. pg_policies
- 50.15. pg_prepared_statements
- 50.16. pg_prepared_xacts
- 50.17. pg_publication_tables
- 50.18. pg_replication_origin_status
- 50.19. pg_replication_slots
- 50.20. pg_roles
- 50.21. pg_rules
- 50.22. pg_seclabels
- 50.23. pg_sequences
- 50.24. pg_settings
- 50.25. pg_shadow
- 50.26. pg_shmem_allocations
- 50.27. pg_stats
- 50.28. pg_stats_ext
- 50.29. pg_stats_ext_exprs
- 50.30. pg_tables
- 50.31. pg_timezone_abbrevs
- 50.32. pg_timezone_names
- 50.33. pg_user
- 50.34. pg_user_mappings
- 50.35. pg_views
- 50.36. pg_wait_events
- Глава 51. Протокол клиент/сервер
- 51.1. Обзор
- 51.2. Поток сообщений
- 51.3. SASL аутентификация
- 51.4. Протокол потоковой репликации
- 51.5. Протокол логической потоковой репликации
- 51.6. Типы данных сообщений
- 51.7. Форматы сообщений
- 51.8. Поля сообщений об ошибках и уведомлениях
- 51.9. Форматы сообщений логической репликации
- 51.10. Сводка изменений с протокола 2.0
- Глава 52. Соглашения по кодированию PostgreSQL
- Глава 53. Поддержка родного языка
- Глава 54. Написание обработчика процедурного языка
- Глава 55. Написание обертки внешних данных
- Глава 56. Написание метода выборки таблицы
- Глава 57. Написание пользовательского поставщика сканирования
- Глава 58. Генетический оптимизатор запросов
- Глава 59. Определение интерфейса метода доступа к таблице
- Глава 60. Определение интерфейса метода доступа к индексу
- Глава 61. Журналирование с опережением для расширений
- Глава 62. Встроенные методы доступа к индексам
- Глава 63. Физическое хранение базы данных
- Глава 64. Обработка транзакций
- Глава 65. Объявления и начальное содержимое системного каталога
- Глава 66. Как планировщик использует статистику
- Глава 67. Формат резервной копии манифеста
- Часть VIII. Приложения
- Приложение A. Коды ошибок Tantor BE
- Приложение B. Поддержка даты/времени
- Приложение C. SQL Ключевые слова
- Приложение D. Соответствие SQL
- Приложение E. Примечания к выпуску
- E.1. Примечания к выпуску Tantor BE 17.9.0
- E.2. Примечания к выпуску Tantor BE 17.7.0
- E.3. Примечания к выпуску Tantor BE 17.6.0
- E.4. Примечания к выпуску для Tantor BE 17.5.2
- E.5. Примечания к выпуску для Tantor BE 17.5.0
- E.6. Выпуск 17.9
- E.7. Выпуск 17.8
- E.8. Выпуск 17.7
- E.9. Выпуск 17.6
- E.10. Выпуск 17.5
- E.11. Выпуск 17.4
- E.12. Выпуск 17.3
- E.13. Выпуск 17.2
- E.14. Выпуск 17.1
- E.15. Выпуск 17
- E.16. Предыдущие версии
- Приложение F. Дополнительные поставляемые модули и расширения
- F.1. amcheck — инструменты для проверки согласованности таблиц и индексов
- F.2. auth_delay — пауза при неудачной аутентификации
- F.3. auto_explain — журналирование планов выполнения медленных запросов
- F.4. basebackup_to_shell — пример «shell» модуль pg_basebackup
- F.5. basic_archive — пример модуля архивации WAL
- F.6. bloom — метод доступа к индексу с использованием фильтра Блума
- F.7. btree_gin — GIN классы операторов с поведением B-tree
- F.8. btree_gist — Классы операторов GiST с поведением B-дерева
- F.9. citext — регистронезависимый строковый тип данных
- F.10. spi — возможности/примеры интерфейса программирования сервера
- F.11. cube — многомерный кубический тип данных
- F.12. dblink — подключение к другим базам данных PostgreSQL
- F.13. dict_int — пример словаря полнотекстового поиска для целых чисел
- F.14. dict_xsyn — пример синонимического словаря полнотекстового поиска
- F.15. earthdistance — вычисление ортодромических расстояний
- F.16. file_fdw — доступ к файлам данных в файловой системе сервера
- F.17. fuzzystrmatch — определение сходства и расстояния между строками
- F.18. hstore — hstore ключ/значение тип данных
- F.19. intagg — агрегатор и перечислитель целых чисел
- F.20. intarray — работа с массивами целых чисел
- F.21. isn — типы данных для международных стандартных номеров (ISBN, EAN, UPC и т.д.)
- F.22. lo — управление большими объектами
- F.23. ltree — иерархический древовидный тип данных
- F.24. pageinspect — низкоуровневая проверка страниц базы данных
- F.25. page_repair — восстановление отдельных страниц с использованием данных резервного сервера
- F.26. passwordcheck — проверка надежности пароля
- F.27. pgAudit — подробное журналирование аудита сессий и/или объектов
- F.28. pgauditlogtofile — расширение pgAudit для перенаправления строк аудита в отдельный файл
- F.29. pg_background — выполнять команды во фоновых рабочих процессах
- F.30. pg_buffercache — инспектировать состояние кеша буферов Tantor BE
- F.31. pg_cron — планировщик заданий на основе cron, работающий внутри базы данных
- F.32. pgcrypto — криптографические функции
- F.33. pg_freespacemap — исследовать карту свободного пространства
- F.34. pgl_ddl_deploy — прозрачная логическая репликация DDL
- F.35. pg_prewarm — предварительная загрузка данных отношения в буферные кеши
- F.36. pg_repack — удаляет фрагментацию из таблиц и индексов
- F.37. pgrowlocks — показать информацию о блокировке строк таблицы
- F.38. pg_stat_advisor — советник Tantor BE для создания расширенной статистики
- F.39. pg_stat_kcache — статистика о реальных операциях чтения и записи
- F.40. pg_stat_statements — отслеживание статистики планирования и выполнения SQL
- F.41. pgstattuple — получить статистику на уровне кортежей
- F.42. pg_store_plans — средство для отслеживания статистики планов выполнения всех SQL-выражений
- F.43. pg_surgery — выполнять низкоуровневые операции с данными отношений
- F.44. pg_trgm — поддержка сходства текста с использованием триграммного сопоставления
- F.45. pg_uuidv7 — расширение для генерации UUID версии 7 и некоторых других функций
- F.46. pg_visibility — информация и утилиты карты видимости
- F.47. pg_wait_profile — профилирование активности базы данных на основе выборки
- F.48. pg_wait_sampling — статистика событий ожидания на основе выборочного анализа
- F.49. pg_walinspect — низкоуровневая проверка WAL
- F.50. postgres_fdw — доступ к данным, хранящимся на внешних серверах Tantor BE
- F.51. seg — тип данных для отрезков или интервалов с плавающей запятой
- F.52. sepgsql — SELinux-, метка-основанный модуль безопасности с обязательным контролем доступа (MAC)
- F.53. sslinfo — получить информацию о клиенте SSL
- F.54. tablefunc — функции, которые возвращают таблицы (crosstab и другие)
- F.55. tcn — триггерная функция для уведомления слушателей об изменениях в содержимом таблицы
- F.56. test_decoding — SQL-основанный тестовый/примерный модуль для логического декодирования WAL
- F.57. tsm_system_rows — метод выборки SYSTEM_ROWS для TABLESAMPLE
- F.58. tsm_system_time — метод выборки SYSTEM_TIME для TABLESAMPLE
- F.59. unaccent — словарь полнотекстового поиска, который удаляет диакритические знаки
- F.60. uuid-ossp — генератор UUID
- F.61. xml2 — XPath-запросы и функциональность XSLT
- Приложение G. Дополнительные поставляемые программы
- Приложение H. Дополнительные поставляемые утилиты
- Приложение I. Дополнительные программы Tantor, поставляемые в виде отдельных пакетов
- Приложение J. Дополнительные внешние модули, поставляемые в виде отдельных пакетов
- Приложение K. Внешние проекты
- Приложение L. Ограничения Tantor BE
- Приложение M. Сокращения
- Приложение N. Глоссарий
- Приложение O. Поддержка цвета
- Приложение P. Устаревшие или переименованные функции
- Библиография
- Предметный указатель