Описание
Дистрибутив представляет собой SQL-файл pghist_init.sql, который создает схему pghist с нужными процедурами.
Установка заключается в выполнении данного файла в терминальном клиенте psql или SQL-менеджере, например:
psql -d mydb -f pghist_init.sql
Если разрабочики не обладают правами суперпользователя, необходимо выдать им права на использование схемы pghist и ее процедур.
Для этого используется SQL-скрипт pghist_grants.sql с переменной roles, например:
psql -d mydb -f pghist_grants.sql -v roles=developers
Также можно скачать полный zip-архив с документацией, примерами, расширением, скриптами установки, выдачи прав и удаления.
При промышленном использовании установка осуществляется из командной строки с использованием терминального клиента psql:
1. Загружается и выполняется файл pghist_init.sql
curl https://pghist.org/files/download/pghist_init.sql | psql -d [database]
2. Выдаются права разработчикам (необязательно)
curl https://pghist.org/files/download/pghist_grants.sql | psql -d [database] -v roles=[developers]
Пример установки в базу данных mydb и выдача прав роли r_analysts
postgres@debian:~$ curl https://pghist.org/files/download/pghist_init.sql | psql mydb
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0CREATE SCHEMA
100 58015 100 58015 0 0 267k 0 --:--:-- --:--:-- --:--:-- 268k
CREATE FUNCTION
CREATE TABLE
CREATE TABLE
CREATE TABLE
CREATE TABLE
CREATE TABLE
CREATE TABLE
DO
CREATE FUNCTION
DO
CREATE FUNCTION
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE PROCEDURE
CREATE PROCEDURE
CREATE PROCEDURE
CREATE PROCEDURE
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
DO
CREATE FUNCTION
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE PROCEDURE
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE FUNCTION
CREATE TABLE
CREATE FUNCTION
CREATE PROCEDURE
CREATE PROCEDURE
CALL
postgres@debian:~$ curl https://pghist.org/files/download/pghist_grants.sql | psql mydb -v roles=r_analysts
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1188 100 1188 0 0 3984 0 --:--:-- --:--:-- --:--:-- 3986
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
При установке инструмента в виде расширения необходимо распаковать архив pghist_extension.tar в директорию [sharedir]/extension установки postgres и создать расширение в базе данных, например (выполняется от root):
pg_config --sharedir"
tar xf pghist_extension.tar -C /usr/pgsql-14/share/extension
psql -U postgres -d mydb -c "create extension pghist"
Пример установки и создания в базе данных test
root@debian:~# curl https://pghist.org/files/download/pghist_extension.tar | tar x -C $(pg_config --sharedir)/extension
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 61440 100 61440 0 0 831k 0 --:--:-- --:--:-- --:--:-- 833k
root@debian:~# psql -U postgres -d mydb -c "create extension pghist"
CREATE EXTENSION
Исходный код выложен в репозиторий GitHub
Свидетельство о регистрации