Программы
Как установить и настроить PostgreSQL в MacOS

Как установить и настроить PostgreSQL в MacOS

Для установки PostgreSQL в Linux воспользуйтесь этой заметкой.

Установить PostgreSQL

brew install postgresql

service ... и /etc/init.d – у нас само собой нет, поэтому pg_ctl:

→ pg_ctl status
pg_ctl: no database directory specified and environment variable PGDATA unset
Try "pg_ctl --help" for more information.

Но даже это не работает – не поднят PostgreSQL. Поднимаем PostgreSQL:

→ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
waiting for server to start.... done
server started

Настроим PostgreSQL

Отлично, теперь создадим юзера, базу данных:

sudo psql -U postgres
psql: FATAL:  role "postgres" does not exist

Окей, юзера тоже нет. А что же есть?

→ psql -l
                                            List of databases
   Name    | Owner     | Encoding |   Collate   |    Ctype    |     Access privileges          
-----------+-----------+----------+-------------+-------------+-------------------------------
 postgres  | USER_NAME | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | USER_NAME | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/USER_NAME                 +
           |           |          |             |             | USER_NAME=CTc/USER_NAME
 template1 | USER_NAME | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/USER_NAME                 +
           |           |          |             |             | USER_NAME=CTc/USER_NAME
(3 rows)

Есть наш юзер с правами суперюзера. Однако, привывычка...

→ sudo psql -U USER_NAME -d postgres
psql (10.1)
Type "help" for help.

postgres=# CREATE USER postgres WITH SUPERUSER PASSWORD 's3cr3t';
CREATE ROLE
postgres=# ALTER DATABASE postgres OWNER TO postgres;
ALTER DATABASE
postgres=# \q

Также теперь можно грохнуть своего пользователя:

postgres=# DROP USER USER_NAME;
DROP ROLE

И по пользоваться уже привычно.

Как создать пользователя и базу данных в PostgreSQL

Ну и на всякий случай:

postgres=# CREATE DATABASE DB_NAME;
CREATE DATABASE
postgres=# CREATE USER USER_NAME WITH password 's3cr3t';
CREATE ROLE
postgres=# GRANT ALL ON DATABASE DB_NAME TO USER_NAME;
GRANT
postgres=# \c DB_NAME
You are now connected to database "DB_NAME" as user "postgres".
DB_NAME=# REVOKE ALL ON SCHEMA public FROM public;
REVOKE
DB_NAME=# GRANT ALL ON SCHEMA public TO DB_NAME;
GRANT
DB_NAME=# \q

– как вариант.

Также может быть вам интересно:

Рассказ о монете

Читать »

Процесс введения процесса

Читать »
Фото Как настроить отправку почты из Django

Как настроить отправку почты из Django

Письма об ошибках, отчёты на почту, восстановление паролей - всё это полезно при работе с сайтом. Django предоставляет удобный способ это сделать с минимумом настроек!

Фото Добавляем поддержку медиа-файлов в Django проект

Добавляем поддержку медиа-файлов в Django проект

Современные сайты редко ограничиваются только текстом и вёрсткой. Часто в заметках красуются фотографии, а рядом с описанием товаров - их изображения.

Фото Настройка журналирования (логирования) в Python с примерами

Настройка журналирования (логирования) в Python с примерами

Во время работы программы часто нужно сохранять некоторые важные записи о процессе выполнения команды. В Python есть довольно мощный модуль для работы с логами - давайте разберёмся с тем, как его использовать.

Фото Добавляем постраничную пагинацию на Django сайт

Добавляем постраничную пагинацию на Django сайт

На сайтах часто встречаются многостраничные объекты: список товаров, список заметок и т.д. Поэтому важно уметь добавить навигацию по страницам на Django-проекте.

Фото Google прекращает поддержку сторонних приложений в API Chrome-like

Google прекращает поддержку сторонних приложений в API Chrome-like

Гугл отключает всех пользователей Chrome-зависимых API. Зачем? К чему это приведёт?

Фото О многозадачности и планировщике задач (шедулер)

О многозадачности и планировщике задач (шедулер)

Небольшой экскурс в проблемы многозадачности и реализации планировщиков.

Фото Очередь обработки Redis на Python

Очередь обработки Redis на Python

В базе данных Redis есть занимательная структура данных — список. Он подходит для разных задач, но в этой заметке речь пойдёт только об очереди обработки заданий.

Фото Примеры работы с NoSQL базой данных Redis из Python

Примеры работы с NoSQL базой данных Redis из Python

База данных Redis имеет множество возможностей для оптимизации работы программ и добавления различных занимательных возможностей ваших проектов. Поэтому, безусловно, стоит обсудить, как с ней работать из Python.