ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 17.10.2024
Просмотров: 74
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
1. Интерпретация данных даты и времени.
2. Ключевые слова для обозначения даты и времени.
3. Файлы конфигурации даты/времени.
4. История единиц измерения времени.
Дополнительно поставляемые модули.
Дополнительно поставляемые программы.
Недокументированные возможности.
Нетривиальное использование таблиц.
Добавление ограничений в существующую таблицу.
Использование производных таблиц.
Модификация производных таблиц.
Создание полей со значениями-массивами.
Вставка значений в поля-массивы.
Определение количества элементов.
Обновление данных в полях-массивах
Автоматизация стандартных процедур.
Операции с последовательностями.
pg_isready — проверить соединение с сервером PostgreSQL
pg_receivewal — получает журналы предзаписи с сервера PostgreSQL
pg_recvlogical — управление потоками логического декодирования PostgreSQL
pg_restore — восстановить базу данных PostgreSQL из файла архива, созданного командой pg_dump
psql — интерактивный терминал PostgreSQL
reindexdb — переиндексировать базу данных PostgreSQL
vacuumdb — выполнить очистку и анализ базы данных PostgreSQL
2. Серверные приложения.
В этом разделе рассматриваются приложения, связанные с функциональностью сервера PostgreSQL и размещённые в contrib. Они обычно запускаются в той же системе, где работает сервер баз данных.
Описываемые команды могут быть полезны только на том компьютере, где работает сервер баз данных.
pg_standby — поддерживает создание сервера тёплого резерва PostgreSQL
initdb — создать кластер баз данных PostgreSQL
pg_archivecleanup — вычистить файлы архивов WAL PostgreSQL
pg_controldata — вывести управляющую информацию кластера баз данных PostgreSQL
pg_ctl — инициализировать, запустить, остановить или управлять сервером PostgreSQL
pg_resetwal — очистка журнала предзаписи и другой управляющей информации кластера PostgreSQL
pg_rewind — синхронизировать каталог данных PostgreSQL с другим каталогом, ответвлённым от него
pg_test_fsync — подобрать наилучший вариант wal_sync_method для PostgreSQL
pg_test_timing — определить издержки замера времени
pg_upgrade — обновить экземпляр сервера PostgreSQL
pg_waldump — вывести журнал предзаписи кластера БД PostgreSQL в понятном человеку виде
postgres — Сервер баз данных PostgreSQL
postmaster — Сервер баз данных PostgreSQL
Внешние проекты.
PostgreSQL — сложный программный проект, управлять которым довольно сложно. Поэтому мы пришли к заключению, что многие дополнения и усовершенствования PostgreSQLбудет эффективнее разрабатывать отдельно от основного проекта.
В базовый дистрибутив PostgreSQL включены только два клиентских интерфейса:
libpq включён, потому что это основной интерфейс языка C и многие другие клиентские интерфейсы построены на основе него.
ECPG включён, потому что он зависит от грамматики языка SQL на стороне сервера, и таким образом, очень чувствителен к изменениям в самом PostgreSQL.
Все остальные языковые интерфейсы разрабатываются в отдельных проектах и распространяются отдельно. Заметьте, что какие-то проекты могут выпускаться под лицензией, отличной от лицензии PostgreSQL. За дополнительной информацией о каждом языковом интерфейсе, включая условия лицензии, обратитесь к его сайту и документации.
Для PostgreSQL выпускаются различные инструменты администрирования. Наиболее популярен из них pgAdmin III, но есть и ряд других, в том числе коммерческих решений.
Базовый дистрибутив PostgreSQL включает несколько процедурных языков: PL/pgSQL, PL/Tcl, PL/Perl и PL/Python.
Кроме того, вне основного дистрибутива PostgreSQL разрабатываются и поддерживаются несколько процедурных языков
PostgreSQL проектируется так, чтобы его можно было легко расширять. Как результат, расширения, загружаемые в базу данных, могут функционировать в точности так же, как и встроенные функции. Каталог contrib/, включённый в дерево исходного кода, содержит несколько расширений, описанных в ДПМ. Другие расширения разрабатываются независимо, как например, PostGIS. PostgreSQL позволяет разрабатывать независимо даже решения по репликации. Например, Slony-I — популярное средство репликации по схеме главный/резервный, разрабатываемое отдельно от основного проекта.
Репозиторий исходного кода.
Исходный код PostgreSQL хранится и управляется системой управления версиями Git. В Интернете доступно открытое зеркало главного репозитория, которое обновляется в течение минуты после изменения в главном репозитории.
Заметьте, что для сборки PostgreSQL из репозитория исходного кода требуются достаточно современные версии программ bison, flex и Perl. Эти программы не требуются для сборки из дистрибутивного архива, так как в этот архив уже включены файлы, создаваемые указанными программами.
Получение исходного кода из Git
С Git вы получаете на своём компьютере копию всего репозитория кода, так что вы будете иметь автономный доступ ко всем ветвям и истории разработки. Это позволяет максимально быстро и гибко разрабатывать или тестировать правки кода.
Git
Вам потребуется установленная версия Git (её можно получить, обратившись к сайту https://git-scm.com). Во многих системах последняя версия Git устанавливается по умолчанию, либо имеется в системе распространения пакетов.
Чтобы начать работу с репозиторием Git, сделайте копию официального зеркала:
git clone https://git.postgresql.org/git/postgresql.git
При этом на ваш компьютер будет скопирован весь репозиторий, так что это может занять некоторое время, особенно при медленном подключении к Интернету. Загруженные файлы будут помещены в новый подкаталог postgresql внутри текущего каталога.
К зеркалу Git также можно обратиться по протоколу Git. Просто смените префикс в адресе на git:
git clone git://git.postgresql.org/git/postgresql.git
Когда вы захотите получить последние обновления, перейдите в каталог репозитория (выполнив cd) и запустите:
git fetch
Git может гораздо больше, нежели просто получить исходный код. За дополнительными сведениями обратитесь к страницам руководства man Git или к сайту https://git-scm.com.
Документация.
Документация PostgreSQL публикуется в четырёх основных форматах:
-
Простой текст, для информации перед установкой -
HTML, для справки, поиска и просмотра в Интернете -
PDF, для печати -
Страницы руководства man, для быстрой справки.
Кроме того, в дереве исходного кода PostgreSQL можно найти несколько простых текстовых файлов README, освещающих различные вопросы реализации.
Документация в HTML и страницы man входят в состав стандартного дистрибутива и устанавливаются по умолчанию. Документацию в формате PDF можно загрузить отдельно.
DocBook
Исходный материал документации пишется на языке разметки DocBook, который отдалённо напоминает HTML. Оба эти языка являются приложениями SGML (Standard Generalized Markup Language, Стандартного обобщённого языка разметки), который по сути является языком описания других языков. В следующем описании используется как термин DocBook, так и SGML, но технически они не взаимозаменяемы.
Документация PostgreSQL в настоящее время переводится с формата DocBook SGML со стилями DSSSL в формат DocBook XML со стилями XSLT. Убедитесь, что вы читаете инструкции к той версии PostgreSQL, с которой имеете дело, так как процедуры и набор инструментов будут меняться.
Формат DocBook позволяет авторам определять структуру и содержимое технического документа, не заботясь о деталях представления. Как это содержимое будет представлено в различных конечных формах, определяет стиль документа. DocBook поддерживается группой OASIS. На официальном сайте DocBook имеется хорошая вводная и справочная документация, а также полная книга издательства О'Рейли для чтения в электронном виде. Новичкам будет очень полезно руководство NewbieDoc Docbook Guide. Кроме того, в Проекте документации FreeBSD (FreeBSD Documentation Project) так же применяется формат DocBook и даются полезные сведения, включая ряд замечаний по стилю, которые стоит принять во внимание.
Инструментарий
Для обработки документации применяются следующие средства. Некоторые из них могут быть необязательными, как отмечено ниже.
DTD для DocBook
Это полное определение самого формата DocBook. В настоящее время мы применяем версию 4.2; более ранняя или более поздняя версия не подойдёт. Использовать нужно вариации SGML и XML формата DocBook этой же версии. Обычно они распространяются в отдельных пакетах.
Сущности символов ISO 8879
Они требуются форматом DocBook SGML, но распространяются отдельно, так как поддерживаются комитетом ISO.
Таблицы стилей DocBook XSL
Они содержат инструкции обработки для преобразования исходных материалов DocBook в другие форматы, например, в HTML.
На данный момент требуется версия как минимум 1.77.0, но для лучшего результата рекомендуется использовать последнюю доступную версию.
OpenSP
Это базовый пакет для обработки SGML. Заметьте, что мы более не нуждаемся в OpenJade, процессоре DSSSL, а пакет OpenSP используем только для преобразования SGML в XML.
Libxml2 для xmllint
Эта библиотека и включённая в неё утилита xmllint применяются для обработки XML. У многих разработчиков библиотека Libxml2 уже установлена, потому что она также используются при сборке кода PostgreSQL. Заметьте, однако, что xmllint может потребоваться установить из отдельного пакета.
Libxslt для xsltproc
xsltproc — процессор XSLT, то есть программа, преобразующая XML в другие форматы с применением таблиц стилей XSLT.
FOP
Это программа для преобразования, в том числе и XML в PDF.
Вы можете обойтись без локальной установки файлов DocBook XML и таблиц стилей DocBook XSLT, так как необходимые файлы будут загружены из Интернета и помещены в локальный кеш. Этот вариант на самом деле может быть предпочтительным, если в пакетах вашей операционной системы предоставляются только старые версии файлов (особенно стилей) или если таких пакетов нет вовсе. Дополнительную информацию вы можете получить, ознакомившись с параметром --nonet программ xmllint и xsltproc.