Как можно дублировать ту же конфигурацию среды, что и сервер базы данных?

Я заинтересован в том, чтобы моя локальная конфигурация сервера postgres соответствовала производственной. Учитывая соединение psql с ним, можно ли запускать некоторые запросы и извлекать соответствующие параметры производительности? В качестве альтернативы, если это невозможно, кто-нибудь знает параметры конфигурации для оплачиваемых планами postgres герою?

Ответ 1

Это покажет вам все настройки для сервера.

SELECT current_setting(name), * FROM pg_catalog.pg_settings

Затем вы можете посмотреть postgresql.conf, чтобы узнать, что было установлено вручную.

Если у вас нет доступа к postgresql.conf, используйте приведенный выше запрос на каком-то другом сервере и посмотрите, что другое:)

Ответ 2

Это должно работать до тех пор, пока у вас есть разрешение на чтение удаленного файла конфигурации (смените разделитель на щепотку).

create table conf(
  line text
);

do $$ 
begin
  execute 
    format(
      'copy conf from ''%s'' delimiter ''|''', 
      current_setting('config_file'));
end $$;

select * from conf;

Две полезные советы.

-- skip empty and commented lines:

select line from conf
where line != '' and ltrim(line, e' \t') not like '#%';

-- copy conf to file:

copy (select replace(line, e'\t', '    ') from conf) to 'c:/data/postgres.conf';