Создание БД и пользователей#

sudo -iu postgres psql
CREATE DATABASE new_database;
CREATE USER new_user WITH PASSWORD 'user_password';
GRANT ALL PRIVILEGES ON DATABASE new_database TO new_user;

Important

Ключевые слова и идентификаторы (или имена) в Постгрессе не чувствительны к регистру, соответственно строки

CREATE USER new_user;
CReaTe uSeR New_uSer;
create user new_user;

— эквивалентны.

Принято писать ключевые слова заглавными (CREATE USER), а имена строчными (new_user, new_database, new_table).

Существует также особый тип идентификаторов: delimited identifier или quoted identifier (т.е. “идентификатор в кавычках” — стоит уточнить каноничный перевод). Такие идентификаторы регистрозависимы.

Соответственно, с точки зрения Постгресса, идентификаторы FOO, foo и "foo" — идентичны, а "Foo" и "FOO" — отличаются друг от друга и от первых трёх.

Hint

Практический вывод из сказанного выше:

Если требуется использовать имена пользователей и баз данных смешанного регистра, нужно заключать их имена в кавычки:

CREATE USER "New_User";

Как сказано в предыдущем блоке, общепринятая практика — использовать имена в нижнем регистре (и без кавычек).