Ова страница је машински преведена. Прочитајте енглески оригинал. English

IBSurgeon библиотека

Како променити путању за привремене датотеке Firebird-а помоћу FIREBIRD_TMP

Како променити путању за привремене датотеке Firebird-а помоћу FIREBIRD_TMP

Из чланка “FirebirdSQL: интерне датотеке, привремене датотеке и променљиве окружења” знате да локацију привремених датотека Firebird-а одређује променљива окружења FIREBIRD_TMP.

Ако приметите да подразумевана локација за привремене датотеке нема довољно простора, или ако се налази на спорој диск јединици, можете покушати да промените путању до привремених Firebird датотека. За то је потребно да дефинишете FIREBIRD_TMP са новом путањом.

Како практично променити локацију привремених Firebird датотека помоћу променљиве окружења FIREBIRD_TMP?

Linux

Да бисте дефинисали променљиву окружења у Linux-у, отворите датотеку Firebird сервиса () и додајте у [service] секцију:

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

затим ажурирајте окружење демона и поново покрените Firebird сервис следећим командама:

Code
systemctl daemon-reload
systemctl restart firebird-superserver

Имајте на уму - овај приступ ради за Firebird 3 и Firebird 4. За 2.5, додајте у датотеку сервиса редове са

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

Да бисте проверили вредности променљивих окружења, користите следећу команду:

Code
strings /proc/PID/environ

где је PID идентификатор процеса Firebird сервера.

Након тога, привремене датотеке ће ићи на нову путању. Међутим, нећете моћи да их видите једноставном ls командом, јер су креиране у “pre-deleted” режиму. Да бисте видели привремене датотеке на новој путањи, користите следеће команде:

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

где је PID идентификатор Firebird процеса.

Видећете нешто овако (ако постоје активни ORDER BY/GROUP BY/DISTINCT упити):

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

На Windows-у, најједноставнији начин да то подесите је да покренете командну линију са администраторским привилегијама и извршите команду:

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

Такође, можете отворити дијалог “Edit the system environment variables” и додати променљиву тамо.

Након тога, да би се применило, поново покрените Firebird сервис.