This commit is contained in:
parent
6d8287780e
commit
b99cf60de4
@ -6,7 +6,8 @@
|
||||
|
||||
- `sudo -u postgres psql postgres` - подключиться к базе данных `postgres` от имени пользователя Linux `postgres`
|
||||
!!! tip ""
|
||||
Если не указано имя базы данных, psql попытается подключиться к базе данных с именем, совпадающим с именем пользователя. В данном случае это будет база данных postgres
|
||||
`sudo -u postgres psql`
|
||||
Если не указано имя базы данных при подключении, psql попытается подключиться к базе данных с именем, совпадающим с именем пользователя. В данном случае это будет база данных postgres
|
||||
- `sudo -u postgres psql -d имя_базы_данных -f путь_к_скрипту.sql` - выполнить SQL-скрипт на базе
|
||||
- `sudo -u postgres psql -d имя_базы_данных -c "SQL-запрос"` - выполнить SQL-скрипт на базе
|
||||
|
||||
@ -31,17 +32,21 @@
|
||||
Роль (ROLE) — это более общее понятие. Она может быть как пользователем, так и группой. Роль по умолчанию НЕ ИМЕЕТ права на подключение к базе данных (если не указан атрибут LOGIN)
|
||||
|
||||
Роли (и пользователи) могут иметь дополнительные атрибуты, которые определяют их поведение. Вот основные атрибуты:
|
||||
- `LOGIN` - Позволяет роли подключаться к базе данных (по умолчанию для USER)
|
||||
- `SUPERUSER` - Дает роли права суперпользователя
|
||||
- `CREATEDB` - Позволяет роли создавать базы данных
|
||||
- `CREATEROLE` - Позволяет роли создавать другие роли
|
||||
- `INHERIT` - Позволяет роли наследовать права от других ролей (по умолчанию TRUE)
|
||||
- `REPLICATION`- Позволяет роли использоваться для репликации
|
||||
- `PASSWORD` - Устанавливает пароль для роли
|
||||
|
||||
- `LOGIN` - Позволяет роли подключаться к базе данных (по умолчанию для USER)
|
||||
- `SUPERUSER` - Дает роли права суперпользователя
|
||||
- `CREATEDB` - Позволяет роли создавать базы данных
|
||||
- `CREATEROLE` - Позволяет роли создавать другие роли
|
||||
- `INHERIT` - Позволяет роли наследовать права от других ролей (по умолчанию TRUE)
|
||||
- `REPLICATION`- Позволяет роли использоваться для репликации
|
||||
- `PASSWORD` - Устанавливает пароль для роли
|
||||
|
||||
```sql
|
||||
CREATE ROLE admin WITH LOGIN PASSWORD 'password' CREATEDB CREATEROLE
|
||||
```
|
||||
|
||||
PostgreSQL пользователя (USER) можно добавить в роль (ROLE). Когда пользователь добавляется в роль, он автоматически наследует все права, связанные с этой ролью.
|
||||
|
||||
```sql
|
||||
-- Создаем роль
|
||||
CREATE ROLE read_only;
|
||||
@ -51,7 +56,7 @@
|
||||
GRANT read_only TO myuser;
|
||||
```
|
||||
```sql
|
||||
# удалить пользователя из роли
|
||||
-- удалить пользователя из роли
|
||||
REVOKE имя_роли FROM имя_пользователя;
|
||||
```
|
||||
- `GRANT ALL PRIVILEGES ON DATABASE имя_базы TO имя_пользователя;`
|
||||
@ -245,16 +250,16 @@ FROM pg_stat_database;
|
||||
#### Где что лежит??
|
||||
|
||||
1. Каталог данных
|
||||
- `/var/lib/postgresql/<версия>/main/` - Debian/Ubuntu
|
||||
- `/var/lib/pgsql/<версия>/data/` - CentOS/Fedora
|
||||
- `psql -U postgres -c "SHOW data_directory;"`
|
||||
- `/var/lib/postgresql/<версия>/main/` - Debian/Ubuntu
|
||||
- `/var/lib/pgsql/<версия>/data/` - CentOS/Fedora
|
||||
- `psql -U postgres -c "SHOW data_directory;"`
|
||||
2. Конфигурационные файлы (могут находится в каталоге данных)
|
||||
- `/etc/postgresql/<версия>/main/`
|
||||
- `psql -U postgres -c "SHOW config_file;"` - путь к конфигу
|
||||
- `psql -U postgres -c "SHOW hba_file;"` - путь к настройкам аутентификации
|
||||
- `/etc/postgresql/<версия>/main/`
|
||||
- `psql -U postgres -c "SHOW config_file;"` - путь к конфигу
|
||||
- `psql -U postgres -c "SHOW hba_file;"` - путь к настройкам аутентификации
|
||||
3. Каталог логов
|
||||
- `/var/log/postgresql/`
|
||||
- `psql -U postgres -c "SHOW log_directory;"`
|
||||
- `/var/log/postgresql/`
|
||||
- `psql -U postgres -c "SHOW log_directory;"`
|
||||
---
|
||||
|
||||
- `SHOW shared_preload_libraries;` - список библиотек, которые были загружены при старте PostgreSQL с помощью параметра `shared_preload_libraries` в `postgresql.conf`
|
||||
|
Loading…
x
Reference in New Issue
Block a user