blog.it-kb.ru
Перенаправляем размещение временных файлов экземпляра Firebird SQL на Windows Server 2012 R2 - Блог IT-KB
При использовании СУБД Firebird 2.5 на сервере с ОС Windows Server 2012 R2 мы можем столкнуться с проблемой переполнения системного диска временными файлами, которые могут появляться в результате работы пользователей с базами данных Firebird. Анализ ситуации показывает, что появление временных файлов не связано с нехваткой ресурсов сервера, а может являться его типичным поведением. Чтобы избежать повторения возникновения подобной проблемы, мы можем изменить месторасположение каталога временных файлов Firebird, но для этого нам потребуется "объяснить" службе экземпляра Firebird то, где он впредь должен размещать такие временные файлы. Проблема конфигурации экземпляра Firebird "по умолчанию" Простым и понятным решением в описанной ситуации представляется настройка параметра TempDirectories в основном конфигурационном файле экземпляра Firebird - firebird.conf. Предполагается, что мы можем выделить под файлы Firebird отдельный дисковый том и/или подкаталог на диске, отличном от системного и разместить в этом месте временные файлы Firebird c помощью параметра TempDirectories. Приведу фрагмент конфигурации, предполагающий подобную настройку. ... # ---------------------------- # Temporary directories # # Provide ';'-separated trees list, where temporary files are stored. # Relative paths are treated relative to RootDirectory entry # (see above). Default value is determined using FIREBIRD_TMP, # TEMP or TMP environment options. Once the first specified # directory has no available space, the engine will switch to the # next one, and so on. # # E.g.: # TempDirectories = c:\temp # or # TempDirectories = c:\temp;d:\temp # # Type: string (special format) # #TempDirectories = TempDirectories = D:\FBInst1\Temp ... Однако практика показывает, что служба экземпляра Firebird 2.5 на Windows Server упорно игнорирует этот параметр. То есть несмотря на настройку этого параметра, временные файлы, создаваемые Firebird, по-прежнему попадают в каталог, определяемый через переменную %TEMP%. По умолчанию такой путь будет определяться, как подкаталог \AppData\Local\Temp в профиле учётной записи пользователя, от имени которой выполняется служба экземпляра Firebird. Например, если служба Firebird работает от имени управляемой сервисной учётной