Персональная страница shra, блог фриленсера, веб-разработчика на PHP. Здесь я делюсь своим опытом и мыслями, провожу опыты над людьми, собираю нематериальные свидетельства собственной глупости. Используя примеры программного кода с данного сайта, вы принимаете всю ответственность за возможные последствия их использования, включая ваше психическое здоровье и интересы третьих лиц.
Есть чёткая иерархия, как PostgreSQL читает свои настройки.
Порядок чтения конфигурации
PostgreSQL при старте (и при reload) собирает итоговую конфигурацию из нескольких источников. Порядок такой:
#
Источник
Кто пишет
Приоритет
1
Значения по умолчанию
Сам PostgreSQL (вкомпилированы)
низший
2
postgresql.conf
Вы, вручную
средний
3
postgresql.auto.conf
ALTER SYSTEM SET ...
высший
4
Файлы из include / include_dir
Вы, вручную
зависит от места подключения
5
Опции командной строки при запуске (-c name=value)
Администратор
выше всех
Т.е. если вы меняли настройки через ALTER SYSTEM … sql запрос, то они будут записаны в postgresql.auto.conf, и переопределит то, что вы указывали в postgresql.conf.
Чтобы разобраться откуда взялась та или иная настройка можно выполнить следующий запрос (на примере max_connections):
Можно действовать разными способами, в зависимости от ситуации. Мне требовалось вытащить данные из проекта на Python/Django/PostgreSQL, чтобы потом экспортировать ...
Cитуация: поле в таблице имеет тип bytea (бинарные данные), но вы точно знаете, что внутри него хранится обычный текст (например, из-за ошибки проектирования или legacy-системы).
НЕ используйте ::text — он покажет шестнадцатеричный код (\x48656C6C6F), ...
Не простая операция, если вы не имели опыта настройки / работы с postgresql до сих пор. Расскажу поэтапно как выгрузить дамп базы, и как затем этот дамп ...