> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Документация по SETTINGS PROFILE

# CREATE SETTINGS PROFILE

Создаёт [SETTINGS PROFILE](/ru/concepts/features/security/access-rights#settings-profiles-management), которые можно назначать пользователю или роли.

Синтаксис:

```sql theme={null}
CREATE SETTINGS PROFILE [IF NOT EXISTS | OR REPLACE] name1 [, name2 [,...]]
    [ON CLUSTER cluster_name]
    [IN access_storage_type]
    [SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [CONST|READONLY|WRITABLE|CHANGEABLE_IN_READONLY] | INHERIT 'profile_name'] [,...]
    [TO {{role1 | user1 [, role2 | user2 ...]} | NONE | ALL | ALL EXCEPT {role1 | user1 [, role2 | user2 ...]}}]
```

предложение `ON CLUSTER` позволяет создавать SETTINGS PROFILE в кластере, см. [Распределённый DDL](/ru/reference/statements/distributed-ddl).

Для `CREATE SETTINGS PROFILE` требуется привилегия [CREATE SETTINGS PROFILE](/ru/reference/statements/grant#access-management). `OR REPLACE` удаляет существующий profile с тем же именем, включая сведения о том, к каким ролям он применяется, поэтому дополнительно требуется привилегия [DROP SETTINGS PROFILE](/ru/reference/statements/grant#access-management). Привилегия `DROP SETTINGS PROFILE` требуется независимо от того, существует ли уже profile, поэтому этот оператор нельзя использовать, чтобы выяснить, какие profiles существуют.

## Пример

Создайте пользователя:

```sql theme={null}
CREATE USER robin IDENTIFIED BY 'password';
```

Создайте SETTINGS PROFILE `max_memory_usage_profile`, задав значение и ограничения для настройки `max_memory_usage`, и назначьте его пользователю `robin`:

```sql theme={null}
CREATE
SETTINGS PROFILE max_memory_usage_profile SETTINGS max_memory_usage = 100000001 MIN 90000000 MAX 110000000
TO robin
```
