postgresql

postgresql подключается к PostgreSQL, показывает таблицы и строки, выполняет точечные изменения, экспортирует данные, запускает нативный SQL и создаёт логические резервные копии.

База данныхВерсия 1.1.3Стабильная
lil-terminal

Обзор

Используйте postgresql для единого рабочего процесса PostgreSQL: скрытый ввод пароля, просмотр схем и строк, точечные изменения, выгрузка, нативный SQL и логические резервные копии без системной оболочки.

PostgreSQL без упрощения его модели

PostgreSQL — клиент-серверная реляционная СУБД со строгими типами, транзакциями и богатым собственным SQL. Внутри базы могут существовать схемы, а уже в них таблицы и другие объекты, поэтому здесь схема означает ещё и пространство имён базы, а не только описание столбцов. Короткий набор команд удобен для просмотра и типовых изменений, а специфичные возможности PostgreSQL доступны через :.

Синтаксис

lil-terminal
postgresql [options] · postgresql : <sql>

Справочник

postgresql

показать текущее подключение PostgreSQL

postgresql -c <host> <user> [database] [-p <port>] [-n] [-m [name]]

подключиться; пароль запрашивается отдельно, если не указан -n

-use <database>

выбрать другую базу данных с переподключением

-l

показать базы данных

-t

показать публичные таблицы и представления

-s <table>

показать столбцы и типы данных

-n <table> [rows]

показать несколько строк таблицы

-f <table> <text> [rows]

найти текст по столбцам таблицы

-o <table> [-j|-csv] [file] [-f]

выгрузить строки таблицы

-a <table> : <json>

добавить строку из JSON-объекта

-w <table> <field> <value> : <json>

изменить совпавшие строки из JSON-объекта

-d <table> <field> <value>

удалить совпавшие строки

-m [name]

сохранить текущее подключение в .lil.key; по умолчанию использовать имя базы

-M <name>

удалить сохранённое подключение

-k [name]

показать сохранённые подключения или сведения об одном без вывода пароля

-K <name>

подключиться через сохранённое подключение

-e

отключиться и удалить данные подключения

postgresql : <sql>

выполнить нативный SQL

postgresql load <file.sql|file.json>

выполнить SQL или восстановить логический JSON-дамп lil

postgresql dump [file.json] [-f]

создать логический JSON-дамп публичных таблиц

Просмотр и изменение

-l показывает базы, -t — public-таблицы и представления, -s — определения столбцов, -n — строки, -f — текстовый поиск по одной таблице, -o — JSON/CSV. -a, -w и -d предназначены для небольших точечных изменений; сложные операции выполняйте SQL.

Дамп и восстановление

Поскольку lil принципиально не запускает системный pg_dump, dump создаёт логический JSON-снимок строк public-таблиц, а load умеет восстановить этот формат или выполнить SQL-файл. Для полного резервирования схем, расширений, ролей и кластерных объектов используйте штатные инструменты PostgreSQL на стороне сервера.

Подключение и безопасность

Пароль -c запрашивается вне истории. -use переподключает текущую сессию к другой базе. Все операции выполняются с правами подключённого пользователя PostgreSQL.

JSON-дамп lil содержит только данные и не воссоздаёт объекты схемы и индексы. JSON-восстановление выполняется транзакционно; выгрузка или дамп таблицы больше 100000 строк отклоняются.

Сохранённые подключения

Без -m данные подключения остаются только в текущей PHP-сессии. -m [name] явно сохраняет профиль в защищённом файле .lil.key (0600), -K <name> подключается через него повторно, -k показывает список или сведения о профиле без вывода сохранённого пароля, а -M <name> удаляет профиль. kill удаляет .lil.key вместе с остальным состоянием ядра. Относитесь к файлу как к чувствительному: добровольно сохранённый профиль может содержать доступы к базе данных.

Интерактивный пример из `/sandbox/`

Запускайте подготовленные примеры прямо на странице. Результат заранее сформирован и показывается в браузере; команды терминала на сервере не выполняются.

Посмотреть таблицу PostgreSQL

Установка и управление

Устанавливайте актуальную совместимую версию. Для полного набора возможностей выбирайте Base, для сокращённого — Minimum; уже установленный модуль обновляет команда upgrade.

Base и Minimum — два пакета одного текущего релиза модуля, а не разные версии команды.

Пакет Base

Установить полный пакет с локальной справкой и всеми опубликованными режимами.

install postgresql
Пакет Minimum

Установить сокращённый пакет без локальной справки; help <cmd> -i открывает актуальную серверную справку.

install postgresql -m
Точная публичная версия

Установить именно эту опубликованную версию.

install postgresql -v 1.1.3
Проверить или обновить

Поручить upgrade проверить совместимость и заменить установленный блок только при необходимости.

upgrade postgresql
Удалить модуль

Удалить блок расширения, не затрагивая ядро и остальные модули.

install postgresql -u

Примеры

Примеры можно копировать, но сайт их не выполняет. Перед запуском на реальном проекте проверьте пути, права и разрушающие флаги.

Посмотреть таблицу PostgreSQL
postgresql -use shop | postgresql -t | postgresql -n products 5
Database  shop

products
orders

id	sku	name	category	price	active
1	SHOE-1	City shoe	shoes	79.90	t
2	SHOE-2	Trail shoe	shoes	109.00	t
Postgresql · localhost
postgresql -c localhost app shop
Status    connected
Server    PostgreSQL 17
Host      localhost:5432
User      app
Database  shop
Postgresql · -l
postgresql -l
postgres
shop
template1
Postgresql · products
postgresql -s products
Column    Type           Nullable
id        bigint         no
sku       text           no
name      text           no
category  text           no
price     numeric(10,2)  no
active    boolean        no
Postgresql · products
postgresql -f products "shoe" 20
id	sku	name	category	price
1	SHOE-1	City shoe	shoes	79.90
2	SHOE-2	Trail shoe	shoes	109.00
Postgresql · products
postgresql -o products -j products.json
Saved  products.json
Postgresql · products
postgresql -a products : {"sku":"BAG-1","name":"Travel bag","price":49.90}
Inserted  1
Postgresql · products
postgresql -w products sku BAG-1 : {"price":44.90}
Updated  1
Postgresql · products
postgresql -d products sku BAG-1
Deleted  1
Postgresql · select
postgresql : SELECT COUNT(*) AS products FROM products
products
4
Postgresql · dump
postgresql dump shop.json
Saved  shop.json
Postgresql · load
postgresql load \sandbox\db\postgresql.sql
Affected  2
Time      2 ms
Postgresql · -e
postgresql -e
+
Обработать отсутствующую таблицу
postgresql -s missing_table
Таблица не найдена: missing_table

Файл из примера: sandbox/db/postgresql.sql

Пример использует файл или каталог из защищённой учебной папки /sandbox/.

CREATE TABLE products (id BIGSERIAL PRIMARY KEY, sku text UNIQUE NOT NULL, name text NOT NULL, category text NOT NULL, price numeric(10,2) NOT NULL, active boolean NOT NULL DEFAULT true);
INSERT INTO products(sku,name,category,price,active) VALUES ('SHOE-1','City shoe','shoes',79.90,true),('BAG-1','Canvas bag','bags',44.50,true);

Связанная документация

Текущая публичная версия

v1.1.32026-08-14

Сохранённые подключения

Добавлены явные профили -m/-M/-k/-K в .lil.key; списки никогда не показывают сохранённый пароль.