PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Est-il possible de définir des variables globales dans postgresql

S'appuyant sur la réponse de @ klin, il existe plusieurs façons de conserver un paramètre de configuration au-delà de la session en cours. Notez que ceux-ci nécessitent des privilèges de superutilisateur.

Pour définir une valeur pour toutes les connexions à une base de données particulière :

ALTER DATABASE db SET abc.xyz = 1;

Vous pouvez également définir une valeur à l'échelle du serveur à l'aide de ALTER SYSTEM commande, ajoutée en 9.4. Cela ne semble fonctionner que pour les paramètres définis par l'utilisateur s'ils ont déjà été SET dans votre session en cours. Notez également que cela nécessite un rechargement de la configuration pour prendre effet.

SET abc.xyz = 1;
ALTER SYSTEM SET abc.xyz = 1;
SELECT pg_reload_conf();

Pré-9.4, vous pouvez accomplir la même chose en ajoutant le paramètre au postgresql.conf de votre serveur dossier. Dans la version 9.1 et les versions antérieures, vous devez également enregistrer une classe de variables personnalisées.