DROP POSTGRES INSTANCE

Supprime l’instance Snowflake Postgres spécifiée du compte.

Voir aussi :

CREATE POSTGRES INSTANCE , ALTER POSTGRES INSTANCE, DESCRIBE POSTGRES INSTANCE , SHOW POSTGRES INSTANCES

Syntaxe

DROP POSTGRES INSTANCE [ IF EXISTS ] <name>
Copy

Paramètres

name

Indique l’identificateur de l’instance Postgres à supprimer.

Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.

Pour plus d’informations, voir Exigences relatives à l’identificateur.

Exigences en matière de contrôle d’accès

Un rôle utilisé pour exécuter cette opération doit au minimum disposer des privilèges suivants :

Privilège

Objet

Remarques

OWNERSHIP

Instance Postgres

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.

Notes sur l’utilisation

  • Actuellement, les instances Postgres supprimées ne peuvent pas être récupérées ; vous devez les recréer. Toutefois, si vous avez créé un fork de l’instance, le fork reste indépendant et non affecté. Pour faciliter la recréation ultérieure d’instances, vous pouvez utiliser DESC POSTGRES INSTANCE pour capturer les détails de chaque instance avant de la supprimer.

  • Lorsque cette commande est émise, Snowflake met fin à l’instance Postgres et libère les ressources de calcul associées. La facturation des ressources de calcul s’arrête lorsque l’instance est entièrement terminée.

  • Toutes les données stockées dans l’instance Postgres sont définitivement supprimées. Assurez-vous d’avoir sauvegardé toutes les données importantes avant de supprimer l’instance.

  • Si l’instance a la haute disponibilité activée, la HA en attente est également supprimée en même temps que l’instance primaire.

  • Si l’instance possède des répliques de lecture, ces répliques sont également supprimée lorsque l’instance primaire est supprimée.

  • Les instances forkées sont des copies indépendantes. La suppression de l’instance source n’affecte pas les instances qui en ont été forkées.

  • Lorsque la clause IF EXISTS est spécifiée et que l’objet cible n’existe pas, la commande se termine correctement, sans renvoyer d’erreur.

Exemples

Supprimer une instance Postgres :

DROP POSTGRES INSTANCE my_postgres;
Copy

Supprimer une instance Postgres uniquement si elle existe :

DROP POSTGRES INSTANCE IF EXISTS my_postgres;
Copy

Utiliser l’opérateur de flux pour trouver une instance à supprimer :

-- Find the oldest instance
-- Then use SET and IDENTIFIER() to drop it
SET oldest_instance = (
  SHOW POSTGRES INSTANCES
    ->> SELECT "name"
        FROM $1
        ORDER BY "created_on"
        LIMIT 1
);

DROP POSTGRES INSTANCE IDENTIFIER($oldest_instance);
Copy

Rechercher des instances sous un seuil de stockage avant la suppression :

-- Identify small instances
SHOW POSTGRES INSTANCES
  ->> SELECT "name", "storage_size", "created_on"
      FROM $1
      WHERE "storage_size" < 50
      ORDER BY "storage_size";

DROP some_extremely_small_instance;
Copy

Vérifier la propriété avant de tenter la suppression :

SHOW GRANTS ON POSTGRES INSTANCE my_postgres;

-- Verify that you have OWNERSHIP privilege, then drop
DROP POSTGRES INSTANCE my_postgres;
Copy