L'adminpack
fournit un certain nombre de fonctions de
support que pgAdmin ou d'autres outils de gestion
et d'administration peuvent utiliser pour fournir des fonctionnalités
supplémentaires, comme la gestion à distance de journaux applicatifs.
L'utilisation de toutes ces fonctions est seulement autorisée aux
superutilisateurs par défaut mais peut être autorisée à d'autres
utilisateurs en utilisant la commande GRANT
.
Les fonctions affichées dans Tableau F.1 fournissent des accès en écriture aux fichiers de la machine hébergeant le serveur. (Voir aussi les fonctions dans Tableau 9.95, qui fournissent des accès en lecture seule.) Seuls les fichiers du répertoire principal de l'instance sont accessibles, sauf si l'utilisateur a l'attribut SUPERUSER ou fait partie des rôles pg_read_server_files ou pg_write_server_files, suivant la fonction. Les chemins relatifs et absolus sont permis.
Tableau F.1. Fonctions de adminpack
Fonction Description |
---|
Écrit dans un fichier |
Vide un fichier ou un répertoire sur disque. |
Renomme un fichier |
Supprime un fichier. |
Liste les fichiers de trace du répertoire précisé par |
pg_file_write
écrit les données indiquées par le
paramètre data
dans le fichier indiqué par le
paramètre filename
. Si le paramètre
append
vaut false, le fichier ne doit pas déjà
exister. S'il vaut true, le fichier peut déjà exister et les données y
seront ajoutées. Renvoit le nombre d'octets écrits.
pg_file_sync
synchronise sur disque le fichier ou le
répertoire indiqué d'après son filename
. Une erreur
est renvoyée en cas d'échec (par exemple si le fichier indiqué n'est pas
présent). Notez que data_sync_retry n'a pas d'effet
sur cette fonction, et de ce fait, une erreur de niveau PANIC ne sera pas
renvoyée même en cas d'échec pour synchroniser les fichiers de la base.
pg_file_rename
renomme un fichier. Si
archivename
est omis ou vaut NULL, il renomme
simplement oldname
en newname
(qui ne doit pas déjà exister). Si archivename
est
fourni, il renomme tout d'abord newname
en
archivename
(qui ne doit pas déjà exister), puis il
renomme oldname
en newname
. En
cas d'échec à la deuxième étape, il essaiera de renommer
archivename
en newname
avant
de renvoyer l'erreur. Renvoit true en cas de succès, false si les fichiers
sources ne sont pas présents ou modifiables. Dans tous les autres cas, elle
renvoit une erreur.
pg_file_unlink
supprime le fichier indiqué. Renvoit
true en cas de succès, false si le fichier spécifié n'est pas présent ou si
l'appel à unlink()
échoue. Dans tous les autres cas,
elle renvoit une erreur.
pg_logdir_ls
renvoit l'horodatage et le chemin de tous
les journaux applicatifs stockés dans le répertoire indiqué par le
paramètre log_directory. Le paramètre log_filename doit avoir sa configuration par défaut
(postgresql-%Y-%m-%d_%H%M%S.log
) pour utiliser cette
fonction.