ALTER DATABASE
ALTER DATABASE — Modifier une base de données
Synopsis
ALTER DATABASE nom [ [ WITH ] option [ ... ] ]
où option peut être :
CONNECTION LIMIT limite_connexion
ALTER DATABASE nom SET paramètre { TO | = } { valeur | DEFAULT }
ALTER DATABASE nom RESET paramètre
ALTER DATABASE nom RENAME TO nouveau_nom
ALTER DATABASE nom OWNER TO nouveau_propriétaire
Description
ALTER DATABASE
modifie les attributs d'une base de données.
La première forme modifie certains paramètres d'une base de données
(voir ci-dessous pour les détails). Seul le propriétaire de la base
de données ou un superutilisateur peut modifier ces paramètres.
La deuxième et la troisième formes modifient la valeur de session
par défaut d'une variable de configuration de base de données. À
chaque démarrage ultérieur d'une nouvelle session dans cette base,
la valeur spécifiée devient la valeur de session par défaut.
Celle-ci surcharge la configuration présente dans le fichier
postgresql.conf ou celle héritée de la
ligne de commande du
postgres
. Seul le propriétaire de
la base ou un superutilisateur peut modifier les valeurs de session
par défaut d'une base. Certaines variables ne peuvent pas être
configurées de cette façon ou ne peuvent l'être que par un
superutilisateur.
La quatrième forme permet de renommer la base. Seul le propriétaire
ou un superutilisateur peut renommer une base. Un propriétaire qui
n'est pas superutilisateur doit en outre posséder le droit
CREATEDB. La base en cours d'utilisation
ne peut pas être renommée (on se connectera à une base différente
pour réaliser cette opération).
La cinquième forme change le propriétaire de la base de données.
Pour changer le propriétaire, il faut être propriétaire de la base
de données et membre direct ou indirect du nouveau rôle
propriétaire. Le droit CREATEDB est
également requis (les superutilisateurs ont automatiquement tous
ces droits).
Paramètres
-
nom
-
Le nom de la base dont les attributs sont à modifier.
-
limite_connexion
-
Le nombre de connexions concurrentes sur la base de données.
-1 signifie aucune limite.
-
paramètre
,
valeur
-
Initialise le paramètre de session par défaut sur cette base
de donnée à la valeur précisée. Si
valeur
est DEFAULT ou que, de façon équivalente,
RESET est utilisé, la configuration
spécifique à la base est supprimée et celle par défaut du
système est récupérée par les nouvelles sessions. RESET ALL est utilisé pour supprimer tout
paramètre de configuration spécifique à la base de données.
Voir SET
et Chapitre 17,
Configuration du serveur pour plus d'informations sur les
noms et valeurs de paramètres autorisés.
-
nouveau_nom
-
Le nouveau nom de la base.
-
nouveau_propriétaire
-
Le nouveau propriétaire de la base.
Notes
Il est possible de lier une valeur de session par défaut à un
utilisateur plutôt qu'à une base. Voir ALTER USER à ce propos.
En cas de conflit, les configurations spécifiques à l'utilisateur
l'emportent sur celles spécifiques à la base.
Exemples
Désactiver les parcours d'index par défaut de la base test :
ALTER DATABASE test SET enable_indexscan TO off;
Compatibilité
La commande
ALTER
DATABASE
est une extension PostgreSQL™.