Доступ к Lock файлу
Доступ к Lock файлу
Здраствуйте!
Заранее прошу прощения если мой вопрос элементарный.
В форуме я искал ответ но не нашел.
Проблема в следующем:
Есть корпаративная сеть
У каждого пользователя очень строго прописаны права и он не может видеть директории других машин (или может но не все).
На машине-сервере установлен Firebird 1.5 (как сервис)
Он установлен в директорию C:\Program Files\Firebird\Firebird_1_5 (по умолчанию)
При попытке соединится с базой данных которая тоже лежит на сервере (C:\databases\db.gdb) из клиентской машины
возникает зависание сервера.
Долго искал причину и кое-что нашел:
При коннекте Firebird создает файл [ИМЯ КЛИЕНТСКОЙ МАШИНЫ].lck и необходимо чтобы к папке где создается этот файл (а создается он именнов в C:\Program Files\Firebird\Firebird_1_5 (там же где и security.fdb)) был ОБЩИЙ ДОСТУП.
Но это противоречит политике безопасности фирмы. И опять же открывать доступ к файлу security.fdb где лежит пароль для SYSDBA не очень хочется.
Как быть?
В описание Firebird1.5 сказано что есть переменная FIREBIRD_LOCK которая отвечает за месторасположение Lock файла
Но где она настраивается я не нашел.
Помогите мне с моей бедой.
Заранее благодарен.
Валерий.
Заранее прошу прощения если мой вопрос элементарный.
В форуме я искал ответ но не нашел.
Проблема в следующем:
Есть корпаративная сеть
У каждого пользователя очень строго прописаны права и он не может видеть директории других машин (или может но не все).
На машине-сервере установлен Firebird 1.5 (как сервис)
Он установлен в директорию C:\Program Files\Firebird\Firebird_1_5 (по умолчанию)
При попытке соединится с базой данных которая тоже лежит на сервере (C:\databases\db.gdb) из клиентской машины
возникает зависание сервера.
Долго искал причину и кое-что нашел:
При коннекте Firebird создает файл [ИМЯ КЛИЕНТСКОЙ МАШИНЫ].lck и необходимо чтобы к папке где создается этот файл (а создается он именнов в C:\Program Files\Firebird\Firebird_1_5 (там же где и security.fdb)) был ОБЩИЙ ДОСТУП.
Но это противоречит политике безопасности фирмы. И опять же открывать доступ к файлу security.fdb где лежит пароль для SYSDBA не очень хочется.
Как быть?
В описание Firebird1.5 сказано что есть переменная FIREBIRD_LOCK которая отвечает за месторасположение Lock файла
Но где она настраивается я не нашел.
Помогите мне с моей бедой.
Заранее благодарен.
Валерий.
Re: Доступ к Lock файлу
Если правильно понял, то решение таково - сервис Firebird должен запускаться под правами администратора, пользователям НЕ нужно давать доступ НИ к папкам сервера, НИ к БД. А при коннекте с клиента используйте строку <Имя сервера>:<полный путь к БД> (для TCP/IP) или прописать alias и через него. Про это написано очень много..Salt писал(а):Здраствуйте!
Заранее прошу прощения если мой вопрос элементарный.
В форуме я искал ответ но не нашел.
...
Валерий.
Re: Доступ к Lock файлу
Имя серверной машины, а не клиентской.Salt писал(а):При коннекте Firebird создает файл [ИМЯ КЛИЕНТСКОЙ МАШИНЫ].lck
Доступ нужен для процесса сервера, а не общий. Если ты не используешь NetBEUI-коннект, конечно.Salt писал(а):необходимо чтобы к папке где создается этот файл (а создается он именнов в C:\Program Files\Firebird\Firebird_1_5 (там же где и security.fdb)) был ОБЩИЙ ДОСТУП.
Это переменная окруженияSalt писал(а):В описание Firebird1.5 сказано что есть переменная FIREBIRD_LOCK которая отвечает за месторасположение Lock файла
Но где она настраивается я не нашел.
Re: Доступ к Lock файлу
Валерий, если пользуешся IBExpert, то попробуй сделать Test Connect со своей базой с любого другого компа в сети. Скорее всего увидишь, что проблема в твоей клиенской программе, а не в FB. А IBExpert делает это точно корректно.Salt писал(а):Здраствуйте!
Заранее прошу прощения если мой вопрос элементарный.
В форуме я искал ответ но не нашел.
...
При коннекте Firebird создает файл [ИМЯ КЛИЕНТСКОЙ МАШИНЫ].lck и необходимо чтобы к папке где создается этот файл (а создается он именнов в C:\Program Files\Firebird\Firebird_1_5 (там же где и security.fdb)) был ОБЩИЙ ДОСТУП.
Заранее благодарен.
.....
Валерий.