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

# Gérer vos bases de données depuis la CLI

> Créez, inspectez, redimensionnez, démarrez, arrêtez et supprimez des bases de données Square Cloud avec squarecloud db, et gérez leur certificat TLS.

`squarecloud db` gère les bases de données MongoDB, MySQL, PostgreSQL et Redis de votre compte. La commande fonctionne aussi sous la forme `squarecloud database`.

Les bases de données n'ont pas de fichier de configuration : `[dbID]` est donc soit l'ID que vous passez, soit, si vous l'omettez dans un terminal, un sélecteur de vos bases de données. Trouvez les ID avec [`squarecloud db list`](#squarecloud-db-list).

## `squarecloud db create`

```bash Utilisation theme={"system"}
squarecloud db create --name <name> --memory <MB> --type <engine> --version <version> [--json]
```

| Option | Description |
| - | - |
| `--name <name>` | Nom de la base de données, de 1 à 32 caractères. |
| `--memory <MB>` | Mémoire allouée en MB. |
| `--type <engine>` | `mongo`, `mysql`, `redis` ou `postgres`. |
| `--version <version>` | Version du moteur : une version majeure, comme `17` pour PostgreSQL ou `8` pour MongoDB, ou une version complète. |

Les quatre options sont obligatoires : sans elles, la commande affiche son aide. La création d'une base de données nécessite un plan Standard, Pro ou Enterprise.

```bash theme={"system"}
squarecloud db create --name my-db --memory 1024 --type postgres --version 17
```

```bash Sortie theme={"system"}
✓ Database my-db (<dbID>) created successfully
Save the password now: it is shown only once and cannot be recovered.
  PASSWORD: <password>
  URL: <connection URL>
```

<Warning>
  Le mot de passe n'est affiché qu'une seule fois. `db info` ne le réaffiche pas ; si vous le perdez, régénérez-le avec [`db credentials reset password`](#squarecloud-db-credentials-reset).
</Warning>

Avec `--json`, la commande affiche la base de données créée, mot de passe et URL de connexion compris, au format JSON.

## `squarecloud db list`

```bash Utilisation theme={"system"}
squarecloud db list [--json]
```

Affiche le nom, l'ID, le moteur, la mémoire et le cluster de chaque base de données de votre compte.

## `squarecloud db info`

```bash Utilisation theme={"system"}
squarecloud db info [dbID] [--json]
```

Affiche l'ID de la base de données, son nom, son moteur, sa mémoire, son port, son cluster, son propriétaire et sa date de création.

## `squarecloud db update`

```bash Utilisation theme={"system"}
squarecloud db update [dbID] [--name <name>] [--memory <MB>]
```

| Option | Description |
| - | - |
| `--name <name>` | Nouveau nom de la base de données. |
| `--memory <MB>` | Nouvelle mémoire allouée en MB. |

Renomme la base de données ou modifie sa mémoire. Passez au moins l'une des deux options : sans elles, la commande affiche son aide.

```bash theme={"system"}
squarecloud db update <dbID> --memory 2048
```

## `squarecloud db start`

```bash Utilisation theme={"system"}
squarecloud db start [dbID]
```

Démarre une base de données arrêtée. Si elle est déjà en cours d'exécution, la CLI l'indique (`It is already running.`) et se termine avec le code 0.

## `squarecloud db stop`

```bash Utilisation theme={"system"}
squarecloud db stop [dbID]
```

Arrête une base de données en cours d'exécution. Si elle est déjà arrêtée, la CLI l'indique (`It is already stopped.`) et se termine avec le code 0.

## `squarecloud db status`

```bash Utilisation theme={"system"}
squarecloud db status [dbID] [--all] [--raw] [--json]
```

| Option | Description |
| - | - |
| `--all` | Affiche toutes les bases de données au lieu d'une seule : ID de la base, en cours d'exécution ou non, CPU et mémoire. |
| `--raw` | Affiche les statistiques numériques brutes au format JSON au lieu du tableau. |

Affiche l'ID de la base de données, l'utilisation du CPU, la mémoire, le disque et le statut.

## `squarecloud db metrics`

```bash Utilisation theme={"system"}
squarecloud db metrics [dbID] [--json]
```

Affiche les 24 dernières heures d'utilisation du CPU, d'utilisation de la RAM et de trafic réseau de la base de données, une ligne par point de données de 5 minutes.

## `squarecloud db credentials certificate`

```bash Utilisation theme={"system"}
squarecloud db credentials certificate [dbID]
```

Affiche le certificat TLS de la base de données, que les clients utilisent pour se connecter en TLS.

```bash theme={"system"}
squarecloud db credentials certificate <dbID> > certificate.pem
# Enregistre le certificat dans un fichier.
```

## `squarecloud db credentials reset`

```bash Utilisation theme={"system"}
squarecloud db credentials reset <password|certificate> [dbID] [-y]
```

| Option | Description |
| - | - |
| `-y`, `--yes` | Ignore l'invite de confirmation. |

Régénère le mot de passe ou le certificat TLS, après une confirmation `y/N`. L'ancien cesse de fonctionner immédiatement : mettez donc à jour chaque client qui l'utilise. Un nouveau mot de passe est affiché une seule fois ; après la régénération du certificat, récupérez le nouveau avec `db credentials certificate`.

```bash theme={"system"}
squarecloud db credentials reset password <dbID>
```

## `squarecloud db delete`

```bash Utilisation theme={"system"}
squarecloud db delete [dbID] [-y]
```

| Option | Description |
| - | - |
| `-y`, `--yes` | Ignore l'invite de confirmation. |

<Warning>
  La suppression d'une base de données est définitive. Pour conserver une copie des données, exécutez d'abord [`squarecloud db snapshot create --download`](/fr/cli-reference/snapshots#squarecloud-db-snapshot-create).
</Warning>

Demande `Delete the database <dbID>? This action is irreversible [y/N]` avant de supprimer.

## Voir aussi

| Commande | API | SDK JavaScript | VS Code |
| - | - | - | - |
| `create` | [`POST /v2/databases`](/fr/api-reference/endpoint/databases/create) | [`api.databases.create()`](/fr/sdks/js/databases) | [Créer une base de données](/fr/vscode-extension/features#bases-de-données) |
| `list` | [`GET /v2/users/me`](/fr/api-reference/endpoint/users/me) | [`api.account.me()`](/fr/sdks/js/client) | [Section Bases de données](/fr/vscode-extension/features#bases-de-données) |
| `info` | [`GET .../{database_id}`](/fr/api-reference/endpoint/databases/info) | [`api.databases.get()`](/fr/sdks/js/databases) | |
| `update` | [`PATCH .../{database_id}`](/fr/api-reference/endpoint/databases/edit) | [`api.databases.update()`](/fr/sdks/js/databases) | |
| `start` | [`POST .../start`](/fr/api-reference/endpoint/databases/start) | [`api.databases.start()`](/fr/sdks/js/databases) | [Démarrer](/fr/vscode-extension/features#bases-de-données) |
| `stop` | [`POST .../stop`](/fr/api-reference/endpoint/databases/stop) | [`api.databases.stop()`](/fr/sdks/js/databases) | [Arrêter](/fr/vscode-extension/features#bases-de-données) |
| `status` | [`GET .../status`](/fr/api-reference/endpoint/databases/status) | [`api.databases.status()`](/fr/sdks/js/databases) | |
| `status --all` | [`GET /v2/databases/status`](/fr/api-reference/endpoint/databases/status-all) | [`api.databases.statusAll()`](/fr/sdks/js/databases) | |
| `metrics` | [`GET .../metrics`](/fr/api-reference/endpoint/databases/metrics) | [`api.databases.metrics()`](/fr/sdks/js/databases) | |
| `credentials certificate` | [`GET .../credentials/certificate`](/fr/api-reference/endpoint/databases/credentials/get_certificate) | [`api.databases.certificate()`](/fr/sdks/js/databases) | [Télécharger le certificat TLS](/fr/vscode-extension/features#bases-de-données) |
| `credentials reset` | [`POST .../credentials/reset`](/fr/api-reference/endpoint/databases/credentials/reset) | [`api.databases.resetCredentials()`](/fr/sdks/js/databases) | |
| `delete` | [`DELETE .../{database_id}`](/fr/api-reference/endpoint/databases/delete) | [`api.databases.delete()`](/fr/sdks/js/databases) | [Supprimer](/fr/vscode-extension/features#bases-de-données) |

Les snapshots de bases de données se trouvent dans [Snapshots](/fr/cli-reference/snapshots#squarecloud-db-snapshot-create).
