Cómo cambiar la ruta de los archivos temporales de Firebird con FIREBIRD_TMP
Cómo cambiar la ruta de los archivos temporales de Firebird con FIREBIRD_TMP
Del artículo " FirebirdSQL: archivos internos, archivos temporales y variables de entorno" sabes que la ubicación de los archivos temporales de Firebird está determinada por la variable de entorno FIREBIRD_TMP.
Si ves que la ubicación predeterminada para los archivos temporales tiene falta de espacio, o si está situada en un disco lento, puedes intentar cambiar la ruta de los archivos temporales de Firebird. Para ello, necesitas definir FIREBIRD_TMP con la nueva ruta.
¿Cómo cambiar prácticamente la ubicación de los archivos temporales de Firebird con la variable de entorno FIREBIRD_TMP?
Linux
Para definir la variable de entorno en Linux, abre el archivo de servicio de Firebird () y añade a la sección [service]:
Environment=FIREBIRD_TMP=/new/path/to/tmp
luego actualiza el entorno del daemon y reinicia el servicio de Firebird con los siguientes comandos:
systemctl daemon-reload
systemctl restart firebird-superserver
Ten en cuenta: este enfoque funciona para Firebird 3 y Firebird 4. Para 2.5, añade al archivo de servicio las líneas con
FIREBIRD_TMP=/new/path/to/tmp
export FIREBIRD_TMP
Para comprobar los valores de las variables de entorno, usa el siguiente comando:
strings /proc/PID/environ
donde PID es el ID del proceso del servidor Firebird.
Después de eso, los archivos temporales irán a la nueva ruta. Sin embargo, no podrás verlos con el simple comando ls, porque se crean en modo “pre-eliminado”. Para ver los archivos temporales en la nueva ruta, usa los siguientes comandos:
ls -l /proc/PID/fd/|grep deleted
donde PID es el ID del proceso de Firebird.
Verás algo como esto (si hay consultas activas ORDER BY/GROUP BY/DISTINCT):
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
En Windows, la forma más fácil de configurarlo es ejecutar el símbolo del sistema con privilegios de Administrador y ejecutar el comando:
setx /m FIREBIRD_TMP DISK:/Path/To/Temp/Folder
También puedes abrir el diálogo " Editar las variables de entorno del sistema" y añadir la variable allí.
Después de eso, para aplicar los cambios, reinicia el servicio de Firebird.