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.88, 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
Nom | Type en retour | Description |
---|---|---|
pg_catalog.pg_file_write(filename text, data text, append boolean) | bigint | Écrit dans un fichier |
pg_catalog.pg_file_rename(oldname text, newname text [, archivename text]) | boolean | Renomme un fichier |
pg_catalog.pg_file_unlink(filename text) | boolean | Supprime un fichier |
pg_catalog.pg_logdir_ls() | setof record |
Liste les fichiers de trace du répertoire précisé par log_directory
|
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_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.