
Установка и настройка PostgreSQL и PgAdmin4 в Linux
Интро
PostgreSQL - одна из самых популярных СУБД в мире. Т.к многие сталкиваются с проблемами при установке и настройке, особенно PgAdmin4, я написал краткий гайд, держите его под рукой, и у вас не возникнет проблем. Все действия выполняются на примере ОС Linux Ubuntu.
Установка PostgreSQL в Linux
Если вы устанавливаете PostgreSQL в Windows, молитесь деревянным богам. Пользователи Linux, открывает терминал и пишем:
$ sudo apt install postgresql postgresql-contrib
После установки проверяем статус, обычно PostgreSQL запускается сразу:
$ service postgresql status
Active: active (exited) since Wed 2020-06-10 16:03:52 +07; 3min 53s ago
Команды для управления сервисом такие как start, stop, restart и т.д, можно подглядеть использую команду:
$ service postgresql
Usage: /etc/init.d/postgresql {start|stop|restart|reload|force-reload|status} [version ..]
Конфиг файл postgresql находится в директории:
cain@pytoday:/etc/postgresql/your_postgresql_version/main$
conf.d pg_ctl.conf pg_ident.conf start.conf
environment pg_hba.conf postgresql.conf
Запуск PostgreSQL в Linux
Чтобы войти в PostgreSQL нам нужно залогиниться, при установке СУБД система создаёт суперпользователя под именем postgres:
$ sudo su postgres
postgres@pytoday:/home/cain$
Команда psql запускает shell PostgreSQL.
postgres@pytoday:/home/cain$ psql
postgres=#
Теперь мы можем создавать, редактировать, удалять базы данных, таблицы, пользователей и назначать им права.
Некоторые команды для примера:
\l - выводит список БД.
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(3 rows)
\du - выводит список пользователей.
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
Изменим пароль суперпользователя postgres:
postgres=# ALTER USER postgres WITH PASSWORD 'qwerty';
ALTER ROLE
postgres=#
Запомните или запишите пароль, пригодится.
Создание и удаление пользователя в PostgreSQL
Создадим пользователя командой:
postgres=# CREATE USER username WITH PASSWORD 'password';
CREATE ROLE
postgres=#
Где:
- username - имя пользователя.
- 'password' - пароль.
Снова выведем список пользователей командой \du:
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
username | | {}
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
Видим, что новый пользователь появился в списке, но у него нет никаких прав. Назначим его суперпользователем командой:
postgres=# ALTER USER username WITH SUPERUSER;
ALTER ROLE
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
username | Superuser | {}
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
postgres=#
Чтобы удалить пользователя используйте команду:
postgres=# DROP USER username;
Для выхода из PostgreSQL shell используйте команду:
postgres=# \q
Комбинация клавиш CTRL + D, завершит работу с PostgreSQL.
Это лишь часть команд PostgreSQL, чтобы ознакомиться с полным списком введите:
postgres=# man psql
Курите мануал господа 8)
Установка и настройка PgAdmin4
Выполните команду:
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Далее update:
$ sudo apt-get update
Если возникает ошибка:
N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://apt.postgresql.org/pub/repos/apt focal-pgdg InRelease' doesn't support architecture 'i386'
Откройте следующий файл командой:
$ sudo nano /etc/apt/sources.list.d/pgdg.list
И исправьте строку:
deb http://apt.postgresql.org/pub/repos/apt/ focal-pgdg main
на
deb [arch=amd64] http://apt.postgresql.org/pub/repos/apt/ focal-pgdg main
Ещё раз выполняем $ sudo apt-get update ,ошибка исчезнет.
Устанавливаем PgAdmin4.
$ sudo apt install pgadmin4 pgadmin4-apache2
На этапе установки система потребует ввести почту:
и пароль:
После установки переходим на http://localhost/pgadmin4/
Вводим почту и пароль, если вы видите приветственную страницу apache, перейдите по адресу http://localhost/pgadmin4/browser перед вами откроется админ панель PgAdmin4.
В английском ни в зуб ногой? Выбираем язык Configure pgAdmin:
Добавление сервера в PgAdmin4
Добавим новый сервер, либо ПКМ Servers в левом верхнем углу, либо Add New Server на главной странице.
Во вкладке Connections пропишем настройки.
Создание базы данных в PgAdmin4
Создадим нашу первую БД.
При создании БД, вы можете выбрать какой пользователь будет её владельцем.
БД успешно создана.
Теперь у вас установлена одна из лучших СУБД на мой взгляд в придачу с pgAdmin4. Пользуйтесь.
Пожалуйста войдите или зарегистрируйтесь что-бы оставить комментарий.