PostgreSQL — мощная объектно-реляционная СУБД с открытым исходным кодом. Этот гайд поможет установить и настроить PostgreSQL на Linux.
sudo pacman -S postgresql
sudo apt update
sudo apt install postgresql postgresql-contrib
sudo dnf install postgresql postgresql-server
sudo postgresql-setup initdb
sudo -u postgres initdb -D /var/lib/postgres/data
sudo systemctl enable postgresql
sudo systemctl start postgresql
sudo -u postgres psql
Внутри psql:
\password postgres
Введите новый пароль дважды.
sudo -u postgres createuser --interactive
Следуйте инструкциям.
sudo -u postgres psql
CREATE DATABASE mydb;
CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
\q
sudo -u postgres createdb mydb
sudo -u postgres createuser myuser
sudo -u postgres psql
sudo -u postgres psql -d mydb
psql -U myuser -d mydb
-- Список баз данных
\l
-- Подключение к базе
\c database_name
-- Список таблиц
\dt
-- Описание таблицы
\d table_name
-- Выход
\q
-- Помощь
\?
/var/lib/postgres/data/postgresql.conf — основные настройки/var/lib/postgres/data/pg_hba.conf — аутентификацияОтредактируйте postgresql.conf:
sudo nano /var/lib/postgres/data/postgresql.conf
Найдите и измените:
listen_addresses = '*'
Отредактируйте pg_hba.conf:
sudo nano /var/lib/postgres/data/pg_hba.conf
Добавьте:
host all all 0.0.0.0/0 md5
Перезапустите службу:
sudo systemctl restart postgresql
sudo -u postgres pg_dump mydb > backup.sql
sudo -u postgres psql mydb < backup.sql
sudo -u postgres pg_dumpall > all_backup.sql
# Статус службы
sudo systemctl status postgresql
# Запуск
sudo systemctl start postgresql
# Остановка
sudo systemctl stop postgresql
# Перезапуск
sudo systemctl restart postgresql
# Включение автозапуска
sudo systemctl enable postgresql
Проверьте статус службы:
sudo systemctl status postgresql
Проверьте логи:
sudo journalctl -xe | grep postgres
Проверьте pg_hba.conf:
sudo nano /var/lib/postgres/data/pg_hba.conf
Убедитесь, что метод аутентификации правильный.
Проверьте, что порт 5432 свободен:
sudo netstat -tlnp | grep 5432
# Проверка версии PostgreSQL
psql --version
# Проверка активных подключений
sudo -u postgres psql -c "SELECT * FROM pg_stat_activity;"
# Удаление базы данных
sudo -u postgres dropdb mydb
# Удаление пользователя
sudo -u postgres dropuser myuser
# Размер базы данных
sudo -u postgres psql -c "SELECT pg_size_pretty(pg_database_size('mydb'));"
Автор: ordanax.github.io
Telegram: @linux4at
MAX: Присоединиться
Комментарии