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] :
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 :
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
FIREBIRD_TMP=/new/path/to/tmp
export FIREBIRD_TMP
Pour vérifier les valeurs des variables d’environnement, utilisez la commande suivante :
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 :
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) :
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 :
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.