как изменить конфиг postgresql через ssh

0

У меня есть проект в php, там я подключаюсь к серверу через ssh, и моя задача - изменить параметры postgresql.conf. Я попробовал это:

psql -Upgadmin -p 11935 -d postgres -c array_nulls=off
ERROR:  syntax error at or near "array_nulls"
LINE 1: array_nulls=off
        ^

или мне нужно изменить настройки в postgresql.conf с помощью sed, какую команду мне использовать?

Теги:
ssh
sed

1 ответ

1
Лучший ответ

Любой параметр сервера, который вам удастся изменить с помощью psql, будет длиться до тех пор, пока ваш сеанс. Чтобы изменения сохранялись, вы должны отредактировать postgresql.conf либо с помощью вашего любимого текстового редактора (vim, emacs и т.д.), Либо с помощью служебной программы (sed, awk и т.д.). Все, что следует, предполагает, что у вас есть подходящие привилегии для редактирования postgresql.conf.

Ваша первая работа - найти его. Различные дистрибутивы Linux хранят его в разных местах. В Ubuntu это в

/etc/postgresql/9.4/main
                ^^^

Обратите внимание на номер версии. Разумеется, разные для каждой версии PostgreSQL. Если бы я хотел изменить настройку, я бы сделал это после того, как файл был под управлением версии.

$ sudoedit /etc/postgresql/9.4/main/postgresql.conf
[sudo] password for mike: 

Затем найдите настройку и измените ее. Вот здесь выглядит соответствующий раздел postgresql.conf.

#------------------------------------------------------------------------------
# VERSION/PLATFORM COMPATIBILITY
#------------------------------------------------------------------------------

# - Previous PostgreSQL Versions -

#array_nulls = on

Я бы изменил настройку на

array_nulls = off    # array_nulls = on

Для такого рода изменений обычно требуется перезагрузка или перезапуск dbms PostgreSQL.

  • 0
    Хороший ответ! Спасибо. А как мне изменить настройку через седь? нужно найти строку с параметром, удалить ее и вставить новую с новым значением параметра.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню