powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как отключить пользователя от базы в FB 1.5
13 сообщений из 13, страница 1 из 1
Как отключить пользователя от базы в FB 1.5
    #32598041
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Словом стоит FB 1.5 SuperServer (что-нинаетсь самый обычный).
Нужно отключить определенного пользователя от базы.
Если кто знает подскажите как это сделать.
И еще - как выглядит запрос, который выполняется IBExpert-ом при ShutDown?
Заранее всем спасибо за помощь
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598069
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитай обсуждение. Только всё почитай.
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598113
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийПочитай обсуждение.
Прочитал все - по gfix нашел кое-какую информацию, но вот как работать с помощью этой же (если не ошибаюсь) утилиты с функией isc_database_info( ) не могу разобраться.
С FB я начал работать не так давно, не подскажете где можно документацию почитать по утилитам командной строки, которые входят в комплект поставки?
Спасибо за помощь
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598133
vis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если я не ошибаюсь, то
isc_database_info( ) - это функция Interbase API
а с помощью gfix ты можешь отключить всех пользователей
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598158
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
visесли я не ошибаюсь
Скажу честно - я не знаю, но вот очень хочется разобраться.
На сколько я понял gfix - отрубит всех пользователей, только ОДНОГО никак не получится.
Конечно предлагают (уже много где искал) либо использовать post event (не подходит при пакетном добавлении записей), либо средства самой ОС (что очень привязывает базу и проги к конкретной ОС).
Так как быть, разве нет ничего подобного как в Oracle "kill"???
Про isc_database_info( ) и isc_info_user_names - словом: где и как???
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598177
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ключевое слово - SuperServer .
У него один единственный pid .
Если ты его kill-яешь, то умирает весь сервер целиком, вместе со всеми коннектами и служебными потоками.
Если бы у тебя был ClassicServer, то в этом случае, каждый коннект порождал бы свой собственный процесс. Тогда можно было бы стрелять выборочно.
Но небесзопасно !
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598185
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийЕсли бы у тебя был ClassicServer
Хорошо, тогда как это можно сделать в CS???
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598214
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Средствами ОС.
Какая ОСь у тебя на сервере стоит?
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598315
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прежде всего оговорюсь, что все мои утверждение это лишь субъективное понимание вопроса, которое не претендует на истину.
Так вот:
1. Pid - идентификатор текущей активной транзакции, который является уникальным для каждого клиента выполняющего какие-либо действия с БД. Значит чтобы "убить" изера нужно получить pid активных транзакций и выполнить для нужной "rollback". Pid не может быть один, это реализовано для поддержки OLCP-моделей транзакци (не скажу от куда я это вычитал, потому как забыл), т. е. поддержания актуальности данных для "продолжительных" и "коротких" транзакций. Не прав???
2. Про isc_database_info( ) и isc_info_user_names - скажите пожалуйста что это за звери и как с ними бороться???
3. Ой как не хочется средства самой ОС использовать, но на войне все средства хороши. Стоит на сервере Windows 2000 Server.
4. А где можно почитать еще об отличиях SuperServer и ClassicServer???

На всякий случай объясню зачем мне такой геморой нужен:
У меня БД, с которой работают 2 типа пользователей - операторы и аналитики. Каждый оператор имеет свой login, а у аналитиков он один для всех. Каждый оператор работает только со своей частью БД, а вот аналитики почти со всей сразу. Периодически приходится добавлять или изменять объекты БД, вследствии чего постоянно наступаю на грабли вроде "index in use" . Приходится посылать предварительно сообщения всем операторам и ставить ShutDown, а нужно то бывает связать лишь справочник с таблицей.
А необходимо-то отрубить всего одного оператора и всех аналитиков
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598545
doroshka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это не ответ на вопрос, поэтому не бейте ногами, но:
автор
Периодически приходится добавлять или изменять объекты БД, вследствии чего постоянно наступаю на грабли вроде "index in use".


Это делается на рабочей базе? Мне думается такие вещи правильнее делать на копии рабочей базы, а потом, когда все эксперименты прекращены и изменения "приняты к внедрению" можно сделать скриптик, который по расписанию может выполниться в то время когда в базе никого нет. Тем самым нет опасности убить/вывести из рабочего состояния на какое-то время базу, не надо дергать пользователей и т.д.
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32598981
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
doroshkaЭто делается на рабочей базе? Мне думается такие вещи правильнее делать на копии рабочей базы
Эх, если бы было все так просто, то я так бы и делал...
Похоже, раз никто не знает, придется реализовывать Post Event.
Вообще-то где-то на www.interbase-world.com я уже находил, что такая "задокументированная" возможность будет реализована только в FB 2.0, но думал мож кто знает че-нить нестандартное.
Но всеравно всем спасибо за помощь
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32599026
Фотография alex777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можна я отвечу а то МП удар хватит

PID это не идентификатор транзакции а идентификатор процесса, т.е. у каждого процесса в лююой системе есть индентификатор если у тебя стоитт ВЫНЬ2000 то это значит что (как и во всей этой линейке ОСЬ ВЫНЬ) ты вызываешь диспетчер задач нажимаешь на закладку процессц и гришь снеть задачу, а в юникс системах ты гришь kill (желательно 9 :-) про IOT OAT и все остальное про транзакции надешь здесь и вообще прочиай еще раз обсуждение МП прохого не посоветует и почитай где я сказал там всю и его много
...
Рейтинг: 0 / 0
Как отключить пользователя от базы в FB 1.5
    #32599045
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex777Можна я отвечу а то МП удар хватит
PID это не идентификатор транзакции
Извиняюсь, за свою тупость... может я чето напутал...
поуду читать ссИльку, пасиб
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как отключить пользователя от базы в FB 1.5
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]