Cette page a été traduite automatiquement. Lisez l'original en anglais. English

Bibliothèque IBSurgeon

Comment changer le chemin des fichiers temporaires de Firebird avec FIREBIRD_TMP

Comment changer le chemin des fichiers temporaires Firebird avec FIREBIRD_TMP

D’après l’article " FirebirdSQL : fichiers internes, fichiers temporaires et variables d’environnement", vous savez que l’emplacement des fichiers temporaires Firebird est régi par la variable d’environnement FIREBIRD_TMP.

Si vous constatez que l’emplacement par défaut des fichiers temporaires manque d’espace, ou s’il se trouve sur un disque lent, vous pouvez essayer de changer le chemin des fichiers temporaires Firebird. Pour cela, vous devez définir FIREBIRD_TMP avec le nouveau chemin.

Comment changer concrètement l’emplacement des fichiers temporaires Firebird avec la variable d’environnement FIREBIRD_TMP ?

Linux

Pour définir la variable d’environnement sous Linux, ouvrez le fichier de service Firebird () et ajoutez à la section [service] :

Code
Environment=FIREBIRD_TMP=/new/path/to/tmp

puis mettez à jour l’environnement du démon et redémarrez le service Firebird avec les commandes suivantes :

Code
systemctl daemon-reload
systemctl restart firebird-superserver

Veuillez noter que cette approche fonctionne pour Firebird 3 et Firebird 4. Pour la version 2.5, ajoutez au fichier de service les lignes avec

Code
FIREBIRD_TMP=/new/path/to/tmp
export FIREBIRD_TMP

Pour vérifier les valeurs des variables d’environnement, utilisez la commande suivante :

Code
strings /proc/PID/environ

où PID est l’identifiant du processus du serveur Firebird.

Après cela, les fichiers temporaires iront vers le nouveau chemin. Cependant, vous ne pourrez pas les voir avec une simple commande ls, car ils sont créés en mode “pré-supprimé”. Pour afficher les fichiers temporaires dans le nouveau chemin, utilisez les commandes suivantes :

Code
 ls -l /proc/PID/fd/|grep deleted

où PID est l’identifiant du processus Firebird.

Vous verrez quelque chose comme ceci (s’il y a des requêtes ORDER BY/GROUP BY/DISTINCT actives) :

Code
root@ubuntu:/opt/testtmp# ls -l /proc/122999/fd/|grep deleted
lrwx------ 1 firebird firebird 64 Jan 11 01:55 7 -> /opt/testtmp/fb_sort_hFFA8P (deleted)

Windows

Sous Windows, le moyen le plus simple de le définir est d’ouvrir l’invite de commandes avec les privilèges d’administrateur et d’exécuter la commande :

Code
 setx /m FIREBIRD_TMP  DISK:/Path/To/Temp/Folder

Vous pouvez également ouvrir la boîte de dialogue " Modifier les variables d’environnement système" et y ajouter la variable.

Ensuite, pour appliquer les modifications, redémarrez le service Firebird.