> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session max_memory_usage_*

> Paramètres de session de ClickHouse dans le groupe généré max_memory_usage_*.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Par défaut</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modifiable sans redémarrage
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Ces paramètres sont disponibles dans [system.settings](/docs/fr/reference/system-tables/settings) et sont générés automatiquement à partir du [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="max_memory_usage">
  ## max\_memory\_usage
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Valeur par défaut dans Cloud : dépend de la quantité de RAM sur la réplique.

Quantité maximale de RAM à utiliser pour exécuter une requête sur un seul serveur.
Une valeur de `0` signifie aucune limite.

Ce paramètre ne tient pas compte du volume de mémoire disponible ni du volume total
de mémoire sur la machine. La restriction s'applique à une seule requête sur un
seul serveur.

Vous pouvez utiliser `SHOW PROCESSLIST` pour voir la consommation mémoire actuelle de chaque requête.
Le pic de consommation mémoire est suivi pour chaque requête et consigné dans le log.

L'utilisation de la mémoire n'est pas entièrement suivie pour les états des fonctions d'agrégation
suivantes à partir d'arguments `String` et `Array` :

* `min`
* `max`
* `any`
* `anyLast`
* `argMin`
* `argMax`

La consommation mémoire est également limitée par les paramètres [`max_memory_usage_for_user`](/docs/fr/reference/settings/session-settings/max-memory-usage#max_memory_usage_for_user)
et [`max_server_memory_usage`](/docs/fr/reference/settings/server-settings/settings#max_server_memory_usage).

<div id="max_memory_usage_for_user">
  ## max\_memory\_usage\_for\_user
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

La quantité maximale de RAM à utiliser pour l’exécution des requêtes d’un utilisateur sur un seul serveur. Zéro signifie illimité.

Par défaut, cette quantité n’est pas limitée (`max_memory_usage_for_user = 0`).

Voir aussi la description de [`max_memory_usage`](/docs/fr/reference/settings/session-settings/max-memory-usage#max_memory_usage).

Par exemple, si vous souhaitez définir `max_memory_usage_for_user` à 1000 octets pour un utilisateur nommé `clickhouse_read`, vous pouvez utiliser l’instruction

```sql theme={null}
ALTER USER clickhouse_read SETTINGS max_memory_usage_for_user = 1000;
```

Vous pouvez vérifier que cela a fonctionné en vous déconnectant de votre client, en vous reconnectant, puis en utilisant la fonction `getSetting` :

```sql theme={null}
SELECT getSetting('max_memory_usage_for_user');
```
