Skip to main content
c.Databases gère les bases de données gérées de Square Cloud (MongoDB, MySQL, PostgreSQL et Redis). Chaque méthode prend d’abord ctx puis, sauf Create et StatusAll, l’identifiant de la base de données. Pour lister vos bases de données, utilisez c.Account.Me : sa slice Databases contient toutes les bases de données que la clé peut voir. L’hébergement de bases de données nécessite un plan Standard, Pro ou Enterprise. Chaque extrait ci-dessous s’exécute seul dans ce programme : collez-en un à la fois dans main et lancez goimports (voir Exécuter les exemples).

Créer une base de données

Le résultat est un DatabaseCreated avec ID, Name, Memory, CPU (float64), Type, Password, Certificate (*string, nil quand l’API n’en envoie pas), ConnectionURL (connection_url) et Cluster. Le mot de passe et le certificat ne sont renvoyés que par Create (et par ResetCredentials). Sans échéance sur ctx, l’appel attend au moins 2 minutes avant d’expirer.

Récupérer une base de données

Mettre à jour une base de données

Update(ctx, databaseID, squarecloud.DatabaseUpdate{Name, RAM}) renomme ou redimensionne une base de données. Les champs à la valeur zéro ne sont pas envoyés ; définissez-en au moins un (400 NO_UPDATE_DATA sinon).

Démarrer et arrêter

Comme les appels de cycle de vie des applications, sans échéance sur ctx ils attendent au moins 2 minutes, et un refus donne 409 avec un code et un message vide : CONTAINER_ALREADY_STARTED, CONTAINER_ALREADY_STOPPED, CONTAINER_NOT_FOUND, CONTAINER_INSUFFICIENT_DISK_SPACE, CONTAINER_NETWORK_CONFLICT ou ACTION_FAILED. Pendant la restauration d’un snapshot, ils donnent 403 RESTORE_IN_PROGRESS.

Statut et métriques

Status(ctx, databaseID) renvoie des valeurs formatées ; StatusRaw(ctx, databaseID) renvoie des nombres. StatusAll(ctx) renvoie un résumé par base de données. Metrics(ctx, databaseID) renvoie les dernières 24 heures, un point toutes les 5 minutes, du plus récent au plus ancien.
Les champs de statut sont les mêmes que pour le statut des applications.

Identifiants

Certificate(ctx, databaseID) renvoie le certificat TLS en PEM encodé en base64. ResetCredentials(ctx, databaseID, reset) renouvelle le mot de passe (squarecloud.ResetPassword, renvoie le nouveau) ou le certificat (squarecloud.ResetCertificate, renvoie ""). La base de données doit être en cours d’exécution (400 DATABASE_NOT_RUNNING).

Supprimer une base de données

La suppression est définitive. Prenez d’abord un snapshot si vous risquez d’avoir de nouveau besoin des données.

Snapshots

c.Databases.Snapshots dispose des mêmes List, Create et Restore que les applications. Voir Snapshots.

Prochaines étapes

Workspaces

Partagez des applications avec votre équipe.

Référence de l'API des bases de données

Les endpoints REST derrière ces méthodes.

Bases de données depuis la CLI

Les mêmes actions depuis le terminal.