Настройка postgresql: Настройка PostgreSQL под Linux / Хабр
Содержание
Настройка PostgreSQL для работы с pgAdmin (когда админка на виндовом хосте)
Главная
|
Все статьи
|
Дневник студента
Время чтения статьи
~1 минута
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Доброго времени суток, читающий. Решил накидать для себя заметку. Надеюсь, пригодится не только мне.
После одной из тем про PostgreSQL было сказано, что надо бы самостоятельно pgAdmin установить. Как оказалось, настройка имеет пару мелких подводных камушков. В моем случае хост у меня крутится на win10 (по зависящим от крутящемся ПО на оном (аналогов под лин нет)), а в вагранте крутится Убунту 16 версии. Я запускал и linux subsystem (или как там это чудо зовется, когда из коробки линукс под окнами), но мне не понравилось. Какая-то пошлость:)
Поднастроим Vagrant:
Смотрим какой айпи хоста используется в связке хост-вагрант и из той же подсетки выбирем другой адрес (в моем случае — у хоста был 192. 168.56.50, поэтому я выбрал 192.168.56.10). Если, уважаемый читающий, ты не в курсе про подсетки или про то, как узнать свой ip, то лучше просто закрой вкладку и не обижайся:).
Прописываем проброс в Vagrantfile опциями (в файле присутствует закомментированный образец — можно вставить строки следующими за закомментированными):
config.vm.network «forwarded_port», guest: 5432, host: 5432
config.vm.network «private_network», ip: «192.168.56.10»
Собсно, все понятно. Из вагранта пробрасываем порт 5432, по которому pgAdmin собирается работать, в сетку хосту и настраиваем гостю адрес.
Далее, чуток шаманаства под гостем. Запускаем вагрант, логинемся в гостя. Подразумевается, что PostgreSQL установлен и работоспособен.
- Авторизация под админом сервера невозможна, когда для оного не установлен пароль (что совершенно логично). Поэтому легким движением запускаем коносль psql для роли postgres:
$ sudo -u postgres psql
и меняем пароль
- Разрешим серверу БД слушать не только локальные подключения. У нас же база для эксперементов и разработки, да?
Правим любимым редактором
/etc/postgresql/9.5/main/postgresql.conf
И изменяем строку
listen_addresses = 'localhost' на listen_addresses = '*'
Думаю, тут все понятно.
А в файлике
/etc/postgresql/9.5/main/pg_hba.conf
допишем в конец разрешение подключаться с нашего адреса к серверу.
host all all 192.168.56.10/24 md5
Далее можно ребутнуть сервер и возрадоваться.
$sudo /etc/init.d/postgresql restart
Ах, да, нужно скачать pgAdmin, установить на хост и войти в базу под posggres:супермегаПароль. Думаю, затруднений это не вызовет.
Андрей Бирюков
13 апреля 2020
Рекомендуемые программы
профессия
•
от 6 300 ₽ в месяц
Фронтенд-разработчик
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 5 025 ₽ в месяц
Аналитик данных
Сбор, анализ и интерпретация данных
9 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 6 300 ₽ в месяц
Python-разработчик
Разработка веб-приложений на Django
10 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 6 300 ₽ в месяц
Java-разработчик
Разработка приложений на языке Java
10 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 6 300 ₽ в месяц
PHP-разработчик
Разработка веб-приложений на Laravel
10 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 6 183 ₽ в месяц
Инженер по тестированию
Ручное тестирование веб-приложений
4 месяца
•
с нуля
Старт
8 июня
профессия
•
от 6 300 ₽ в месяц
Node. js-разработчик
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 10 080 ₽ в месяц
Fullstack-разработчик
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
•
с нуля
Старт
8 июня
профессия
•
от 5 840 ₽ в месяц
Разработчик на Ruby on Rails
Создание веб-приложений со скоростью света
5 месяцев
•
c опытом
Старт
8 июня
профессия
Верстальщик
Верстка с использованием последних стандартов CSS
5 месяцев
•
с нуля
Старт
в любое время
профессия
•
от 6 300 ₽ в месяц
Инженер по автоматизированному тестированию на JavaScript
Автоматизированное тестирование веб-приложений на JavaScript
10 месяцев
•
с нуля
в разработке
дата определяется
Please enable JavaScript to view the
comments powered by Disqus.
PostgreSQL в Fedora, Установка и Настройка
Содержание
- Введение в PostgreSQL на Fedora
- Шаг 1: Обновление системы Fedora
- Шаг 2: Добавьте Yum-репозиторий PostgreSQL
- Шаг 3: Установка PostgreSQL в Fedora 35
- Шаг 4: Инициализация базы данных и включение автоматического запуска
- Шаг 5: Включить удаленный доступ к PostgreSQL на Fedora
- Шаг 6: Установка пароля пользователя PostgreSQL
Здравствуйте в этой статье подробно описывается как установить PostgreSQL на Fedora 35.
Введение в PostgreSQL на Fedora
PostgreSQL — это объектно-реляционная, высокомасштабируемая, SQL-совместимая система управления базами данных с открытым исходным кодом. Она разработана факультетом компьютерных наук Калифорнийского университета в Беркли.
На момент написания этой статьи PostgreSQL 14.1 является последней стабильной версией, доступной для производственных серверов.
Итак данное руководство предназначено для установки PostgreSQL 14.1 на Fedora 35. PostgreSQL — это мощная система реляционных баз данных с открытым исходным кодом, имеющая хорошую репутацию благодаря надежности, функциональности и производительности.
Используйте приведенные ниже шаги чтоб выполнить установку PostgreSQL 14.1 на Fedora 35.
Шаг 1: Обновление системы
Fedora
Убедитесь что системные пакеты обновлены.
sudo dnf install -y bash-completion vim
sudo dnf update -y
Так как у вас могут быть обновления ядра, рекомендуется перезагрузить систему после обновления. Этот шаг не требуется, если вы используете последнюю версию Fedora 35.
sudo reboot
Шаг 2: Добавьте Yum-репозиторий PostgreSQL
Перед установкой PostgreSQL на Fedora 35 вам необходимо добавить Yum — репозиторий PostgreSQL в вашу систему Fedora. Для этого выполните следующую команду.
sudo dnf install https://download.postgresql.org/pub/repos/yum/reporpms/F-35-x86_64/pgdg-fedora-repo-latest.noarch.rpm
Когда появится запрос на подтверждение установки, нажмите клавишу Y.
Добавление репозитория PostgreSQL в Fedora 35
Шаг 3: Установка PostgreSQL в Fedora 35
После добавления репозитория PostgreSQL Yum Repository установите PostgreSQL в Fedora. Для этого выполните команду.
$ sudo dnf install postgresql11-server postgresql11
Далее проверьте установленный пакет.
$ rpm -qi postgresql11-server
Проверка PostgreSQL в Fedora 35
Шаг 4: Инициализация базы данных и включение автоматического запуска
Теперь когда пакеты базы данных установлены, инициализируйте базу данных, выполнив следующую команду.
$ sudo /usr/pgsql-11/bin/postgresql-11-setup initdb
Initializing database … OK
Далее запустите и включите службу, чтобы она включалась при загрузке системы.
sudo systemctl start postgresql-11
sudo systemctl enable postgresql-11
Проверьте статус PostgreSQL.
$ systemctl status postgresql-11
Проверка статуса базы данных PostgreSQL
Конфигурационный файл PostgreSQL 11 -/var/lib/pgsql/11/data/postgresql.conf
Итак, если у вас работает служба Firewall и удаленные клиенты должны подключиться к вашему серверу баз данных, разрешите службу PostgreSQL.
sudo firewall-cmd --add-service=postgresql --permanent
sudo firewall-cmd --reload
Шаг 5: Включить удаленный доступ к PostgreSQL на Fedora
Для включения отредактируйте файл /var/lib/pgsql/11/data/postgresql.conf и установите Listen address на IP-адрес вашего сервера или «*» для всех интерфейсов.
$ sudo vi /var/lib/pgsql/11/data/postgresql.conf
listen_addresses = ‘*’
Также настройте PostgreSQL на прием удаленных соединений.
$ sudo vim /var/lib/pgsql/11/data/pg_hba.conf
Вы должны увидеть это
# Accept from anywhere
host all all 0.0.0.0/0 md5# Accept from trusted subnet
host all all 192.168.18.0/24 md5
Затем требуется перезапустить службу.
sudo systemctl restart postgresql-11
Шаг 6: Установка пароля пользователя PostgreSQL
Установите пользователя PostgreSQL admin
$ sudo su - postgres
[postgres@fed29 ~]$ psql -c «alter user postgres with password ‘StrongPassword’»
ALTER ROLE
Создайте тестового пользователя и базу данных
[postgres@fed ~]$ createuser test_user
[postgres@fed ~]$ createdb test_db -O test_user
[postgres@fed ~]$ grant all privileges on database test_db to test_user;
Теперь войдите в систему как пользователь test_user и попробуйте создать таблицу в базе данных.
Удачи и не забудьте оставить комментарий, если у вас возникнут проблемы, и я обязательно свяжусь с вами как можно скорее.
Как установить PostgreSQL на Mac
PostgreSQL — это мощная система управления объектно-реляционными базами данных с открытым исходным кодом, зарекомендовавшая себя как надежная, отказоустойчивая и производительная. Но как установить PostgreSQL на свой Mac?
Установка PostgreSQL на Mac может быть пугающей для новичков на этой платформе. Но не волнуйтесь. В этом руководстве представлен всесторонний обзор процесса установки, включая все, что вам нужно для начала работы с PostgreSQL на вашем Mac.
Прочтите и сделайте первые шаги в мире PostgreSQL!
Предварительные требования
Прежде чем углубляться в процесс установки, убедитесь, что у вас установлена macOS (OS X) версии 10.6 или новее.
Установка PostgreSQL на Mac с помощью установщика пакетов DMG
Из всех способов установки PostgreSQL на Mac самым простым является использование установщика пакетов DMG. Где взять? Разработчик PostgreSQL предоставляет официальный пакет DMG, содержащий необходимые файлы и ресурсы для установки PostgreSQL.
Чтобы установить PostgreSQL на Mac с помощью установщика пакетов DMG
1. Откройте свой любимый веб-браузер и перейдите на веб-сайт загрузки PostgreSQL.
2. Затем щелкните значок загрузки под столбцом Mac OS X рядом с версией, которую вы хотите установить. Это руководство идет с 15.1 , последней версией, доступной на момент написания.
Загрузка установщика пакета PostgreSQL DMG для Mac
3. После завершения загрузки дважды щелкните файл DMG, чтобы открыть его. При этом монтируется пакет DMG, и появляется окно с Файл PostgreSQL.pkg .
Дважды щелкните файл PostgreSQL.pkg, чтобы начать процесс установки.
Открытие файла PostgreSQL.pkg для установки PostgreSQL на Mac
4. Теперь нажмите Open во всплывающем окне, чтобы подтвердить установку. Это приглашение является мерой безопасности, реализованной macOS для защиты вашего компьютера от потенциально вредоносного программного обеспечения.
Подтверждение установки
5. При появлении запроса введите пароль для своей учетной записи администратора и нажмите 9.0021 OK , чтобы разрешить PostgreSQL вносить изменения.
Авторизация PostgreSQL для внесения изменений
6. Нажмите Далее , когда появится мастер установки PostgreSQL, чтобы продолжить установку.
Продолжение установки
7. На следующем экране выберите каталог установки и нажмите Next .
Рекомендуется оставить каталог установки по умолчанию, если у вас нет особых причин для его изменения.
Выбор каталога установки
8. Затем выберите все доступные компоненты, чтобы обеспечить полную функциональность PostgreSQL, и нажмите Next . Ниже перечислены компоненты, доступные для PostgreSQL:
- PostgreSQL Server — сам сервер PostgreSQL.
- pgAdmin 4 — позволяет управлять базами данных PostgreSQL и работать с SQL через графический интерфейс.
- Stack Builder — позволяет управлять дополнительными компонентами и устанавливать их.
- Инструменты командной строки — позволяет получить доступ к PostgreSQL через терминал.
Выбор компонентов для установки
9. После установки выберите каталог, в котором PostgreSQL будет хранить свои данные, и нажмите Next .
Выбор каталога данных
10. Введите безопасный пароль для учетной записи суперпользователя ( postgres ) и нажмите Далее .
Суперпользователь postgres имеет полный доступ ко всем базам данных в системе, поэтому убедитесь, что вы выбрали надежный и уникальный пароль.
Укажите безопасный пароль
11. Теперь выберите порт для сервера PostgreSQL и нажмите Далее .
Порт по умолчанию — 5432 , но вы можете выбрать другой. Имейте в виду, однако, что некоторые номера портов зарезервированы для определенных служб.
Выбор порта для сервера PostgreSQL
12. Оставьте выбранным Языковой стандарт по умолчанию и нажмите Далее , чтобы продолжить.
Локаль — это набор региональных и языковых настроек, которые определяют, как текст и другие данные отображаются и сохраняются в базе данных.
Выбор локали по умолчанию
13. Просмотрите выбранные настройки и нажмите Назад для изменения любого или Далее для продолжения.
Просмотр выбранных параметров установки PostgreSQL
14. После просмотра нажмите Далее , чтобы продолжить установку.
Завершение установки
Дождитесь завершения установки. Начнется установка, и отобразится индикатор выполнения, как показано ниже.
Просмотр хода установки
15. После завершения установки нажмите Готово , чтобы закрыть мастер.
Закрытие мастера установки
16. Наконец, найдите и запустите pgAdmin , чтобы изучить новую установку PostgreSQL с панели запуска.
Запуск графического интерфейса pgAdmin
Установка PostgreSQL через интерфейс командной строки
Несмотря на то, что установка PostgreSQL с помощью установщика пакетов DMG выглядит достаточно просто, щелкать мышью в мастере установки может быть утомительно. Есть ли более быстрый способ? Да!
Вы можете установить PostgreSQL на Mac через CLI с помощью нескольких команд Homebrew. Homebrew — это менеджер пакетов для macOS, который позволяет устанавливать и управлять различными программными пакетами с терминала.
Чтобы установить PostgreSQL через интерфейс командной строки, выполните следующие действия:
1. Откройте терминал и выполните следующую команду brew
, чтобы обновить список пакетов Homebrew. brew update
brew update
Обновление списка пакетов Homebrew
2. Затем выполните приведенную ниже команду для установить
postgresql
. brew install postgresql
brew install postgresql
Можно также выполнить приведенную ниже команду, чтобы установить определенную версию PostgreSQL. Замените ВЕРСИЯ
предпочитаемой версией PostgreSQL для установки. Но в этом примере устанавливается версия 11 PostgreSQL.
💡 Homebrew позволяет устанавливать различные версии PostgreSQL и переключаться между ними. Вы также имеете полный контроль над запуском, остановкой и перезапуском сервера PostgreSQL.
brew install [email protected]
На этом этапе ваш сервер PostgreSQL будет установлен на вашем Mac. postgresql
).
Службы brew запускают postgresql
Запуск сервера PostgreSQL
Но когда вы не используете сервер PostgreSQL, выполните приведенную ниже команду, чтобы остановить сервер и сохранить системные ресурсы.
Службы brew останавливаются postgresql
Службы brew останавливаются postgresql
Остановка сервера PostgreSQL
Создание базы данных на PostgreSQL
Когда ваш сервер PostgreSQL работает, пришло время создать базу данных для проверки вашей установки. Но сначала вам нужно войти в оболочку Postgres.
1. Выполните следующую команду psql
, чтобы войти в оболочку Postgres.
psql postgres
Ваше приглашение изменится на postgres=#
, как показано ниже, что означает, что вы вошли в систему как суперпользователь.
Вход в оболочку Postgres
2. Затем выполните приведенный ниже запрос, чтобы СОЗДАТЬ
БАЗУ ДАННЫХ
в вашем экземпляре PostgreSQL. Вы можете назвать базу данных по-разному, но в этом руководстве используется my_database
.
СОЗДАТЬ БАЗУ ДАННЫХ my_database;
Создание базы данных
3. После создания выполните приведенную ниже команду, чтобы \\ перечислить
все базы данных в системе. \\list
Как показано ниже, вы можете проверить только что созданную базу данных.
Список всех доступных баз данных в системе
4. Теперь выполните следующую команду для \подключить
к вашей новой базе данных ( my_database
).
\connect my_database
В случае успеха ваше приглашение изменится на my_database=#
, что означает, что вы подключены к своей базе данных.
Подключение к новой базе данных
5. Наконец, выполните одну из следующих команд, чтобы выйти из оболочки PostgreSQL.
Если вы подключены к базе данных при выходе из оболочки PostgreSQL, вы будете отключены от этой базы данных. Любые изменения, внесенные вами в базу данных, будут сохранены.
-- Выход из оболочки PostgreSQL
\q
-- Выход из оболочки PostgreSQL
-- Закрывает окно терминала и завершает все запущенные процессы в терминале.
exit
Выход из оболочки PostgreSQL
Заключение
Базы данных важны и необходимы для запуска современных приложений, а PostgreSQL — одна из самых мощных доступных систем управления базами данных. В этом руководстве вы узнали, как установить PostgreSQL на свой Mac с помощью графического интерфейса и командной строки (Homebrew).
Вы уже создали базу данных с помощью оболочки Postgres. Так что, немного попрактиковавшись, вы сможете начать создавать базы данных и работать с данными в кратчайшие сроки.
Почему бы не развивать свои навыки дальше? Возможно, попробуйте загрузить образец базы данных PostgreSQL и поэкспериментировать с ней.
centos - postgresql-setup --initdb с пользовательским каталогом данных
Я пытаюсь настроить Postgres 12 на Centos 8.
Postgres должен быть установлен в каталоге по умолчанию, то есть /var/lib/pgsql
, однако я хочу, чтобы каталог данных находился в /data/pgsql
. Я хочу использовать postgresql-setup как root, так как я считаю, что это будет создавать вместе с ним служебные файлы systemd, а не использовать pg_ctl или запускать initdb от имени пользователя postgres.
Однако, если я попробую
$ postgresql-setup --initdb --pgdata=/data/pgsql/
Я получу следующую ошибку.
postgresql-setup: нераспознанный параметр '--pgdata=/data/pgsql' FATAL: невозможно разобрать аргументы
Как лучше всего это сделать?
- postgresql
- centos
Если вы хотите поместить свои данные в пользовательский каталог /pgdata/14/data
, создайте каталог с правильными разрешениями
:
mkdir -p /pgdata/14/данные sudo chown postgres:postgres /pgdata/14/data
Затем получите systemctl
для создания файла службы :
sudo systemctl edit postgresql-14.service
Как упоминалось выше, просто добавьте расположение PGDATA
:
[Service] Среда=PGDATA=/pgdata/14/данные
Это создаст файл /etc/systemd/system/postgresql-14.service.d/override.conf
. Он будет объединен с исходным файлом службы.
Чтобы проверить его содержимое:
# cat /etc/systemd/system/postgresql-14.service.d/override. conf [Услуга] Среда=PGDATA=/pgdata/14/данные
Перезагрузить systemd:
# systemctl демон-перезагрузка
Инициализировать каталог данных PostgreSQL:
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
Запустите и включите службу:
sudo systemctl enable postgresql-14 sudo systemctl запустить postgresql-14
1
/usr/pgsql-12/bin/initdb —pgdata=/данные/pgsql
postgresql-setup не создает служебный файл systemd.
Вы должны создать его с нуля /lib/systemd/system/postgresql-14.service или создать файл конфигурации для файла службы systemd по умолчанию.
Например, /lib/systemd/system/db-test.service, который содержит путь к нужной базе данных
# Расположение каталога базы данных Среда=PGDATA=/данные/pgsql/db_test
затем запустите
# systemctl daemon-reload
# systemctl db-test.service
# /usr/bin/postgresql-14-setup initdb db-test
Инициализация базы данных.