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

# CLI でデータベースを管理する

> squarecloud db で Square Cloud のデータベースを作成、確認、サイズ変更、起動、停止、削除し、TLS 証明書とパスワードを表示またはローテーションします。

`squarecloud db` は、アカウントの MongoDB、MySQL、PostgreSQL、Redis データベースを管理します。`squarecloud database` としても使えます。

データベースには設定ファイルがないため、`[dbID]` は渡した ID になるか、ターミナルで省略した場合はデータベースの選択画面になります。ID は [`squarecloud db list`](#squarecloud-db-list) で確認できます。

## `squarecloud db create`

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

| フラグ | 説明 |
| - | - |
| `--name <name>` | データベース名。1 から 32 文字。 |
| `--memory <MB>` | 割り当てるメモリ（MB）。 |
| `--type <engine>` | `mongo`、`mysql`、`redis`、`postgres` のいずれか。 |
| `--version <version>` | エンジンのバージョン。PostgreSQL の `17` や MongoDB の `8` のようなメジャーバージョン、または完全なバージョン。 |

4 つのフラグはすべて必須で、指定しない場合はコマンドのヘルプが表示されます。データベースの作成には Standard、Pro、Enterprise のいずれかのプランが必要です。

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

```bash 出力 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>
  パスワードが表示されるのは 1 回だけです。`db info` では再表示されません。紛失した場合は [`db credentials reset password`](#squarecloud-db-credentials-reset) でローテーションしてください。
</Warning>

`--json` を付けると、パスワードと接続 URL を含む作成されたデータベースが JSON で出力されます。

## `squarecloud db list`

```bash 使い方 theme={"system"}
squarecloud db list [--json]
```

アカウント内のすべてのデータベースの名前、ID、エンジン、メモリ、クラスターを表示します。

## `squarecloud db info`

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

データベースの ID、名前、エンジン、メモリ、ポート、クラスター、所有者、作成日を表示します。

## `squarecloud db update`

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

| フラグ | 説明 |
| - | - |
| `--name <name>` | 新しいデータベース名。 |
| `--memory <MB>` | 新しく割り当てるメモリ（MB）。 |

データベースの名前を変更するか、メモリを変更します。2 つのフラグのうち少なくとも 1 つを指定してください。指定しない場合はコマンドのヘルプが表示されます。

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

## `squarecloud db start`

```bash 使い方 theme={"system"}
squarecloud db start [dbID]
```

停止しているデータベースを起動します。すでに実行中の場合、CLI はその旨（`It is already running.`）を表示し、終了コード 0 で終了します。

## `squarecloud db stop`

```bash 使い方 theme={"system"}
squarecloud db stop [dbID]
```

実行中のデータベースを停止します。すでに停止している場合、CLI はその旨（`It is already stopped.`）を表示し、終了コード 0 で終了します。

## `squarecloud db status`

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

| フラグ | 説明 |
| - | - |
| `--all` | 1 つではなくすべてのデータベースについて、データベース ID、実行中かどうか、CPU、メモリを表示します。 |
| `--raw` | 表の代わりに、数値そのままの統計を JSON で出力します。 |

データベース ID、CPU 使用率、メモリ、ディスク、ステータスを表示します。

## `squarecloud db metrics`

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

データベースの過去 24 時間の CPU 使用率、RAM 使用量、ネットワークトラフィックを、5 分ごとのデータポイント 1 つにつき 1 行で表示します。

## `squarecloud db credentials certificate`

```bash 使い方 theme={"system"}
squarecloud db credentials certificate [dbID]
```

データベースの TLS 証明書を表示します。クライアントは TLS で接続する際にこの証明書を使います。

```bash theme={"system"}
squarecloud db credentials certificate <dbID> > certificate.pem
# Saves the certificate to a file.
```

## `squarecloud db credentials reset`

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

| フラグ | 説明 |
| - | - |
| `-y`、`--yes` | 確認プロンプトをスキップします。 |

`y/N` の確認のあと、パスワードまたは TLS 証明書をローテーションします。古いものはすぐに使えなくなるため、それを使っているすべてのクライアントを更新してください。新しいパスワードは 1 回だけ表示されます。証明書をローテーションした後は、`db credentials certificate` で新しい証明書を取得してください。

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

## `squarecloud db delete`

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

| フラグ | 説明 |
| - | - |
| `-y`、`--yes` | 確認プロンプトをスキップします。 |

<Warning>
  データベースの削除は取り消せません。データのコピーを残すには、先に [`squarecloud db snapshot create --download`](/ja/cli-reference/snapshots#squarecloud-db-snapshot-create) を実行してください。
</Warning>

削除する前に `Delete the database <dbID>? This action is irreversible [y/N]` と確認します。

## 関連項目

| コマンド | API | JavaScript SDK | VS Code |
| - | - | - | - |
| `create` | [`POST /v2/databases`](/ja/api-reference/endpoint/databases/create) | [`api.databases.create()`](/ja/sdks/js/databases) | [データベースを作成](/ja/vscode-extension/features#データベース) |
| `list` | [`GET /v2/users/me`](/ja/api-reference/endpoint/users/me) | [`api.account.me()`](/ja/sdks/js/client) | [「データベース」セクション](/ja/vscode-extension/features#データベース) |
| `info` | [`GET .../{database_id}`](/ja/api-reference/endpoint/databases/info) | [`api.databases.get()`](/ja/sdks/js/databases) | |
| `update` | [`PATCH .../{database_id}`](/ja/api-reference/endpoint/databases/edit) | [`api.databases.update()`](/ja/sdks/js/databases) | |
| `start` | [`POST .../start`](/ja/api-reference/endpoint/databases/start) | [`api.databases.start()`](/ja/sdks/js/databases) | [データベースを起動](/ja/vscode-extension/features#データベース) |
| `stop` | [`POST .../stop`](/ja/api-reference/endpoint/databases/stop) | [`api.databases.stop()`](/ja/sdks/js/databases) | [データベースを停止](/ja/vscode-extension/features#データベース) |
| `status` | [`GET .../status`](/ja/api-reference/endpoint/databases/status) | [`api.databases.status()`](/ja/sdks/js/databases) | |
| `status --all` | [`GET /v2/databases/status`](/ja/api-reference/endpoint/databases/status-all) | [`api.databases.statusAll()`](/ja/sdks/js/databases) | |
| `metrics` | [`GET .../metrics`](/ja/api-reference/endpoint/databases/metrics) | [`api.databases.metrics()`](/ja/sdks/js/databases) | |
| `credentials certificate` | [`GET .../credentials/certificate`](/ja/api-reference/endpoint/databases/credentials/get_certificate) | [`api.databases.certificate()`](/ja/sdks/js/databases) | [TLS 証明書をダウンロード](/ja/vscode-extension/features#データベース) |
| `credentials reset` | [`POST .../credentials/reset`](/ja/api-reference/endpoint/databases/credentials/reset) | [`api.databases.resetCredentials()`](/ja/sdks/js/databases) | |
| `delete` | [`DELETE .../{database_id}`](/ja/api-reference/endpoint/databases/delete) | [`api.databases.delete()`](/ja/sdks/js/databases) | [データベースを削除](/ja/vscode-extension/features#データベース) |

データベースのスナップショットについては[スナップショット](/ja/cli-reference/snapshots#squarecloud-db-snapshot-create)を参照してください。
