Шрифт:
None, Full или Restrict.
* None (значение по умолчанию) отключает любое использование внешних файлов вашим сервером.
* Restrict предоставляет возможность ограничить размещение внешних файлов для доступа из базы данных конкретными путями. Предоставьте список из одного или более путей, разделенных точкой с запятой (;), в которых могут храниться внешние файлы, например:
Unix: /db/extern;/mnt/extern
Windows: C:\ExternalTables
Относительные пути трактуются как пути относительно каталога, который распознается запущенным сервером как корневой каталог инсталляции Firebird.
Например, в Windows, если корнем, который запущенный сервер распознает как корневой каталог инсталляции Firebird, является C:\Program Files\Firebird, то следующее значение будет ограничивать сервер по доступу к внешним файлам, только если они будут размещаться на C:\Program Files\Firebird\userdata\ExternalTables:
ExternalFileAccess = Restrict userdata\ExternalTables
Следующая запись в POSIX позволит осуществлять доступ только к файлам, находящимся в или ниже каталогов /exportdata и /importdata:
ExternalFileAccess = Restrict /exportdata;/importdata
* Full позволят осуществлять доступ к внешним файлам, находящимся в любом месте системы [146] .
Подробную информацию о внешних файлах см. в разд. "Использование внешних файлов в качестве таблиц" главы 16.
Firebird 1.0.x, файл ibconfig.
Только в Windows используется для группирования внешних файлов в одной или нескольких ограниченных зонах. Нет ограничения на количество каталогов, которые могут быть представлены в списке поиска. Создавайте запись из одной строки для каждого каталога, как показано далее:
146
При отсутствии ограничений на размещение внешних таблиц уже давно известны возможности использовать внешние таблицы как для перекачивания базы данных с сервера на клиент, так и для внедрения с клиента на сервер вредоносных UDF.
– Прим. науч. ред.
external_file_directory <путь к каталогу, заключенный в кавычки> external_file_directory "d: \x-files"
Последние главы описывают использование оставшихся инструментов командной строки, которые поставляются вместе с Firebird. Инструмент статистики gstat был описан ранее в главе 18, с инструментом управления доступом пользователя gsec вы познакомились в главе 35. Теперь рассмотрим интерактивную утилиту SQL isql.
ЧАСТЬ IX. Инструменты.
ГЛАВА 37. Интерактивный SQL (утилита isql).
Утилита isql, инсталлированная в каталоге /bin ниже вашего корневого каталога Firebird, предоставляет неграфический интерфейс для баз данных Firebird, который совместим со всеми серверными и клиентскими платформами.
isql принимает операторы DDL и DML, так же как и подмножество подобных SQL консольных команд, недоступных в DSQL. Утилита может быть использована как для создания и поддержания метаданных, так и для запросов к базе данных и изменения данных. Она включает некоторые инструменты администратора и режимы для выполнения прямых операций с базой данных из командной строки или из скриптов.
! ! !
ВНИМАНИЕ! Некоторые другие СУБД используют имя "isql" для своих интерактивных программ. Всегда запускайте программу isql Firebird из ее собственного каталога или задавайте абсолютный путь к файлу, если есть проблемы с вашим сервером.
. ! .
Интерактивный режим
Интерактивная утилита isql может быть запущена локально или с удаленного клиента.
* Для запуска isql с удаленного клиента всегда требуются имя пользователя и пароль.
* Если вы соединены локально, вы можете установить переменные операционной системы ISC_USER и ISC_PASSWORD и исключить необходимость вводить имя пользователя и пароль в командах. Подробнее об этих переменных см. в главе 3.
! ! !
ПРИМЕЧАНИЕ. При вызове интерактивной утилиты могут быть использованы некоторые дополнительные переключатели командной строки. Они представлены в табл. 37.1 в конце этой главы.
. ! .
Текстовый редактор по умолчанию
Некоторые команды isql обращаются к текстовому редактору системы по умолчанию.
* В UNIX, Linux и в некоторых других платформах POSIX редактор по умолчанию определяется одной из двух переменных окружения EDITOR и VISUAL. Значением по умолчанию при инсталляции обычно является vi, vim или emacs, но вы можете установить его в любой другой предпочитаемый консольный (но не X) текстовый редактор.
* В Windows похожая история. Редактор по умолчанию определяется переменной окружения EDITOR. В текущих версиях Windows это Notepad.exe, но вы можете установить его в любой текстовый редактор. В очень старых версиях Windows редактор по умолчанию, вероятно, был mep.exe или edit.exe.