> ## 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.

# Gestionar bases de datos desde la CLI

> Crea, consulta, redimensiona, inicia, detén y elimina bases de datos de Square Cloud con squarecloud db, y muestra o rota su certificado TLS y su contraseña.

`squarecloud db` gestiona las bases de datos MongoDB, MySQL, PostgreSQL y Redis de tu cuenta. También funciona como `squarecloud database`.

Las bases de datos no tienen archivo de configuración, así que `[dbID]` es el ID que pasas o, cuando lo omites en una terminal, un selector con tus bases de datos. Encuentra los IDs con [`squarecloud db list`](#squarecloud-db-list).

## `squarecloud db create`

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

| Flag | Descripción |
| - | - |
| `--name <name>` | Nombre de la base de datos, de 1 a 32 caracteres. |
| `--memory <MB>` | Memoria asignada en MB. |
| `--type <engine>` | `mongo`, `mysql`, `redis` o `postgres`. |
| `--version <version>` | Versión del motor: una versión mayor, como `17` para PostgreSQL u `8` para MongoDB, o una versión completa. |

Los cuatro flags son obligatorios: sin ellos, el comando muestra su ayuda. Crear una base de datos requiere un plan Standard, Pro o Enterprise.

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

```bash Salida 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>
  La contraseña se muestra una sola vez. `db info` no vuelve a mostrarla; si la pierdes, rótala con [`db credentials reset password`](#squarecloud-db-credentials-reset).
</Warning>

Con `--json`, muestra la base de datos creada, incluidas la contraseña y la URL de conexión, como JSON.

## `squarecloud db list`

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

Muestra el nombre, el ID, el motor, la memoria y el clúster de todas las bases de datos de tu cuenta.

## `squarecloud db info`

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

Muestra el ID de la base de datos, el nombre, el motor, la memoria, el puerto, el clúster, el propietario y la fecha de creación.

## `squarecloud db update`

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

| Flag | Descripción |
| - | - |
| `--name <name>` | Nuevo nombre de la base de datos. |
| `--memory <MB>` | Nueva memoria asignada en MB. |

Renombra la base de datos o cambia su memoria. Pasa al menos uno de los dos flags: sin ellos, el comando muestra su ayuda.

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

## `squarecloud db start`

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

Inicia una base de datos detenida. Si ya está en ejecución, la CLI lo indica (`It is already running.`) y sale con código 0.

## `squarecloud db stop`

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

Detiene una base de datos en ejecución. Si ya está detenida, la CLI lo indica (`It is already stopped.`) y sale con código 0.

## `squarecloud db status`

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

| Flag | Descripción |
| - | - |
| `--all` | Muestra todas las bases de datos en lugar de una: ID de la base de datos, si está en ejecución, CPU y memoria. |
| `--raw` | Muestra las estadísticas numéricas sin procesar como JSON en lugar de la tabla. |

Muestra el ID de la base de datos, el uso de CPU, la memoria, el disco y el estado.

## `squarecloud db metrics`

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

Muestra las últimas 24 horas de uso de CPU, uso de RAM y tráfico de red de la base de datos, una fila por cada punto de datos de 5 minutos.

## `squarecloud db credentials certificate`

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

Muestra el certificado TLS de la base de datos, que los clientes usan para conectarse por TLS.

```bash theme={"system"}
squarecloud db credentials certificate <dbID> > certificate.pem
# Guarda el certificado en un archivo.
```

## `squarecloud db credentials reset`

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

| Flag | Descripción |
| - | - |
| `-y`, `--yes` | Omite la confirmación. |

Rota la contraseña o el certificado TLS, tras una confirmación `y/N`. El anterior deja de funcionar de inmediato, así que actualiza todos los clientes que lo usan. Una contraseña nueva se muestra una sola vez; después de rotar el certificado, obtén el nuevo con `db credentials certificate`.

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

## `squarecloud db delete`

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

| Flag | Descripción |
| - | - |
| `-y`, `--yes` | Omite la confirmación. |

<Warning>
  Eliminar una base de datos es permanente. Para conservar una copia de los datos, ejecuta primero [`squarecloud db snapshot create --download`](/es/cli-reference/snapshots#squarecloud-db-snapshot-create).
</Warning>

Pregunta `Delete the database <dbID>? This action is irreversible [y/N]` antes de eliminar.

## Relacionado

| Comando | API | SDK de JavaScript | VS Code |
| - | - | - | - |
| `create` | [`POST /v2/databases`](/es/api-reference/endpoint/databases/create) | [`api.databases.create()`](/es/sdks/js/databases) | [Crear base de datos](/es/vscode-extension/features#bases-de-datos) |
| `list` | [`GET /v2/users/me`](/es/api-reference/endpoint/users/me) | [`api.account.me()`](/es/sdks/js/client) | [Sección Bases de datos](/es/vscode-extension/features#bases-de-datos) |
| `info` | [`GET .../{database_id}`](/es/api-reference/endpoint/databases/info) | [`api.databases.get()`](/es/sdks/js/databases) | |
| `update` | [`PATCH .../{database_id}`](/es/api-reference/endpoint/databases/edit) | [`api.databases.update()`](/es/sdks/js/databases) | |
| `start` | [`POST .../start`](/es/api-reference/endpoint/databases/start) | [`api.databases.start()`](/es/sdks/js/databases) | [Iniciar](/es/vscode-extension/features#bases-de-datos) |
| `stop` | [`POST .../stop`](/es/api-reference/endpoint/databases/stop) | [`api.databases.stop()`](/es/sdks/js/databases) | [Detener](/es/vscode-extension/features#bases-de-datos) |
| `status` | [`GET .../status`](/es/api-reference/endpoint/databases/status) | [`api.databases.status()`](/es/sdks/js/databases) | |
| `status --all` | [`GET /v2/databases/status`](/es/api-reference/endpoint/databases/status-all) | [`api.databases.statusAll()`](/es/sdks/js/databases) | |
| `metrics` | [`GET .../metrics`](/es/api-reference/endpoint/databases/metrics) | [`api.databases.metrics()`](/es/sdks/js/databases) | |
| `credentials certificate` | [`GET .../credentials/certificate`](/es/api-reference/endpoint/databases/credentials/get_certificate) | [`api.databases.certificate()`](/es/sdks/js/databases) | [Descargar certificado TLS](/es/vscode-extension/features#bases-de-datos) |
| `credentials reset` | [`POST .../credentials/reset`](/es/api-reference/endpoint/databases/credentials/reset) | [`api.databases.resetCredentials()`](/es/sdks/js/databases) | |
| `delete` | [`DELETE .../{database_id}`](/es/api-reference/endpoint/databases/delete) | [`api.databases.delete()`](/es/sdks/js/databases) | [Eliminar](/es/vscode-extension/features#bases-de-datos) |

Los snapshots de bases de datos están en [Snapshots](/es/cli-reference/snapshots#squarecloud-db-snapshot-create).
