Перейти к основному содержимому

phpPgAdmin — дампы, безопасность и FAQ

Разработчику

Экспорт и импорт

phpPgAdmin вызывает внешние утилиты PostgreSQL (пути задаются в config.inc.php).

УтилитаНазначение
pg_dumpОдна база, таблица или схема
pg_dumpallВсе базы + глобальные объекты (роли)

Типичные опции в UI (по версии):

  • только структура, только данные, или оба;
  • SQL или custom format;
  • для дампа данных — учёт datestyle и extra_float_digits (исторически важно для точности float в выгрузках).

Импорт SQL

Вкладка Импорт принимает .sql файл. Ограничения те же, что у phpMyAdmin: upload_max_filesize, post_max_size, max_execution_time, memory_limit.

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

psql -h 127.0.0.1 -U postgres -d shop -f backup.sql

или

pg_restore -d shop backup.dump

для custom format.

Большие дампы

ПроблемаРешение
Таймаут HTTPУвеличить max_execution_time, импорт через psql
ПамятьИмпорт из CLI, разбивка дампа
open_basedirКаталог загрузки в разрешённом пути (аналог TempDir в phpMyAdmin)

Безопасность

МераЗачем
Require local / firewallНе публиковать /phppgadmin в интернет
Сильные пароли ролейSCRAM в pg_hba
Отдельная роль приложенияБез SUPERUSER для повседневной работы
HTTPSЗащита пароля при cookie/форме
Актуальный PHPВ 7.12 закрывали Reflected XSS — обновляйте сборку
Минимальные права на configconfig.inc.php недоступен для скачивания

На shared-хостинге (идеи из истории 3.0-beta): скрытие админ-разделов для не-суперпользователей, фильтр «owned databases only».


phpPgAdmin и pgAdmin 4

phpPgAdminpgAdmin 4
СтекPHP + веб-серверPython/Electron, веб-режим
Включение в XAMPPРедкоОтдельная установка
АктивностьРелизы реже после 2020Основной GUI PG
ФункцииSQL, дампы, ролиРасширенный мониторинг, графики, ERD

В Open Server для PostgreSQL документация панели указывает pgAdmin и psql — phpPgAdmin ставят при необходимости вручную.


FAQ — типичные ситуации

PHP does not support PostgreSQL

Расширение pgsql не загружено. Установите php-pgsql, раскомментируйте extension=pgsql в php.ini, перезапустите веб-сервер.

Could not connect to server

  • PostgreSQL не запущен;
  • неверный host/port в config;
  • pg_hba.conf не разрешает IP PHP-хоста;
  • firewall блокирует 5432.

pg_dump not found

Укажите полные пути в $conf['servers'][i]['pg_dump_path'] и pg_dumpall_path (Windows — .exe в каталоге PostgreSQL OSP).

Cannot connect to template1

Задайте $conf['servers'][0]['defaultdb'] = 'postgres'; если template1 недоступна политикой хостинга (см. HISTORY 3.0-rc-2).

Пустая страница / ошибки после входа

Проверьте лог PHP и PostgreSQL; несовместимость PHP 8 со старым phpPgAdmin без патчей — попробуйте форк/community-ветку или pgAdmin.

Сортировка сбрасывает на структуру таблицы

Исправлялось в 7.13.0 — обновите версию phpPgAdmin.

bytea и бинарные поля

Исторически были баги отображения и UPDATE; для критичных данных проверяйте через psql или обновляйте релиз.


См. также


См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").