PostgreSQL FAQ

Автор shurutov, декабря 25, 2018, 06:03:53

« назад - далее »

0 Пользователи и 3 гостей просматривают эту тему.

shurutov

Наиболее частые вопросы из телеграм-чатика по ПГ.

       
  • Q. Я только начал изучать PostgreSQL, что мне почитать?
    A.

            
    • Официальная документация (текущий старший релиз): https://www.postgresql.org/docs/current/static/
    • Перевод документации на русский язык от компании <a href="https://postgrespro.ru">Postgres Professional</A> (10-я версия): https://postgrespro.ru/docs/postgresql/10/
    • Для быстро-быстро есть учебные курсы от указанной компании (для новичков DBA1 обязателен к изучению): https://postgrespro.ru/education/courses
    • Для изучить базовые понятия SQL - Мартин Грубер (Грабер) "Понимание SQL".
      Без изучить данную книгу к базам данных вообще не подходите!

    •    
       [li]Q. Как мне установить PostgreSQL?
    A. Выбрать свою ОС/дистрибутив на странице загрузок PostgreSQL: https://www.postgresql.org/download/
    и следовать инструкциям. Если вашего дистрибутива нет, то это повод сменить дистрибутив, увы и ах. Исключение составляет Gentoo - портежи обновляются своевременно, но зачастую новая версия помечается, как тестовая. Поэтому установка в gentoo следующая:

user@host ~ $ sudo sh -c "echo dev-db/postgresql >> /etc/portage/package.keywords"
user@host ~ $ sudo emerge -av dev-db/postgresql:<MAJOR_VERSION>

ВНИМАНИЕ! Дистрибутивостроители не утруждают себя инициализировать экземпляр с включением контрольных сумм! Это необходимо делать самостоятельно.
RedHat и производные - устанавливать соответствующую переменную окружения. Для уточнения имени переменной надо запустить команду (пример для 10-й версии)
[postgres@pghost ~]$ /usr/pgsql-10/bin/postgresql-10-setup --help
Для 9.3 и, может быть некоторых версий позже, данной возможности не предусмотрено, т.е. выхлоп следующий:
[postgres@pghost ~]$ /usr/pgsql-9.3/bin/postgresql93-setup --help
Usage: /usr/pgsql-9.3/bin/postgresql93-setup {initdb|upgrade} [ service_name ]

соответственно, надо инициализировать кластер с помощью initdb, а чтобы не ломать существующие настройки пакета, необходимо из unit-файла извлечь соответствующие параметры, как минимум PGDATA;
Debian и производныe - удалением инициализированного при установке экземпляра, команда pg_dropcluster и созданием его заново, но уже с включением контрольных сумм, команда
pg_createcluster ... -- --data-checksums ...
Для Gentoo - прописывать соответствующие опции в /etc/conf.d/postgresql-<MAJOR_VERSION>, а затем запускать
emerge --config dev-db/postgresql-<MAJOR_VERSION>

       
  • Q. Что мне почитать по оптимизации запросов PostgreSQL?
    A.
    парочку запросов поисковикам (настоятельно рекомендую пользоваться несколькими!)

            
    • Иван Фролков. Оптимизация запросов PostgreSQL
    • Максим Богук. Оптимизация запросов PostgreSQL
  • Q. Что мне почитать по оптимизации PostgreSQL вообще?
    A. А тут один запрос: "Илья Космодемьянский. Оптимизация PostgreSQL"
И общий ответ на "оптимизация PostgreSQL": учиться читать и понимать EXPLAIN: https://www.postgresql.org/docs/10/static/sql-explain.html
выхлоп этой команды в подавляющем большинстве случаев даёт достаточно информации для выбора адекватного решения возникшей проблемы.

       
  • Q.Это всё здорово, но может есть какой-то ресурс, где есть какие-то базовые настройки, от которых можно оттолкнуться при настройке PostgreSQL? Ну или какой-нибудь конфигуратор, типа mysqltuner или утилит от Percona.
    A. Есть. Но необходимо осознавать, что и зачем вы меняете. Поэтому я настоятельно рекомендую перед применением предлагаемых настроек найти их в документации и почитать, на что их установка влияет. А ресурс вот: http://pgconfigurator.cybertec.at/
[/code]
С уважением,
Шурутов Михаил

Радист

Цитата: shurutov от декабря 25, 2018, 06:03:53Q. Как мне установить PostgreSQL?
Люди в принципе не владеют ОС которую используют?
Восстановление данных с неисправных носителей (hdd,ssd)
Ну и прочий ремонт.

shurutov

Радист, не то что не владеют, компьютер в первый раз видят. Но уже - программисты. :(
С уважением,
Шурутов Михаил

Радист

#3
Цитата: shurutov от января 23, 2019, 06:30:35
Радист, не то что не владеют, компьютер в первый раз видят. Но уже - программисты. :(
Ну такое можно было представить в 92 году , когда я поступил , да и то у нас польские икстишки Мазовия были.Счас невозможно.У каждого дома есть.У меня на одной работе ввшные прапора , ни разу не айтишники бодро владели компом - а это начало 2000х
Восстановление данных с неисправных носителей (hdd,ssd)
Ну и прочий ремонт.