|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Ситуация: FB 2.1, Win Базы в синхронизации, работает служба, подключающаяся к обеим базам. Наступает время обновления ПО Надо конвертировать метаданные БД, и на это время запретить службе синхронизации подключаться к БД. Подскажите, в какую сторону мне смотреть. если учитывать что и служба и конвертер подключается к БД под одним и тем же SYSDBA. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 11:05 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747 Ситуация: FB 2.1, Win Базы в синхронизации, работает служба, подключающаяся к обеим базам. Наступает время обновления ПО Надо конвертировать метаданные БД, и на это время запретить службе синхронизации подключаться к БД. Подскажите, в какую сторону мне смотреть. если учитывать что и служба и конвертер подключается к БД под одним и тем же SYSDBA. Я делаю так: 1. Из обновлятора посылаю эвэнт с просьбой отключиться; 2. Жду минутку; 3. В это время клиенты отключаются, и начинают ждать, когда база перестанет быть доступной; после этого - они начинают ждать, когда база снова станет доступной; 4. Через минутку обновлятор тушит службу FB; 5. Переименовывает файл базы; (дубликат сохраняет за одно) 6. Запускает FB, подключается к этому переименованному файлу БД, обновляет базу (при ошибке - возвращает дубликат); 7. Тушит FB, переименовывает файл базы назад, запускает FB; 8. Всё, клиенты подключаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 12:10 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747, Еще в gfix есть ключ, который выгоняет всех пользователей принудительно, можно даже SYSDBA, еще можно поудалять записи из MON$ATTACHMENTS. Но лично мне такое не подходит по ряду причин. Да и не помню, как с этим в 2.1. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 12:14 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747на это время запретить службе синхронизации подключаться к БД. net stop <твоя служба синхронизации> Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 12:45 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747> Подскажите, в какую сторону мне смотреть Зависит от. Про переименование после стопа сервера уже подсказали, это дедовский способ. Про стоп службы синхронизации тоже. Я бы ещё уточнил, какие есть способы управления/настройки у самой службы синхронизации - возможно, у неё есть команда "стоп", наверняка есть параметр "строка коннекта к БД" и т.д. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 13:36 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov net stop <твоя служба синхронизации> Увы, служба может располагаться на удаленном ПК. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 22:45 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Гаджимурадов Рустам Про переименование после стопа сервера уже подсказали, это дедовский способ. Я бы попросил... Дедовский способ - ремня за SYSDBA для службы для начала, а дальше банальный gfix -shut -f 0. Коннекты от других SYSDBA он тоже отсечёт, но если они настырно полезут снова, то влезут. Потому и ремня. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 23:16 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747служба может располагаться на удаленном ПК. Ты не поверишь, но NET способен остановить и удалённую службу. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 00:07 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Cobalt747служба может располагаться на удаленном ПК. Остановить всю синхронизацию на несколько десятков ПК только для обновления одного ПК - это перебор. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 16:28 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747Остановить всю синхронизацию на несколько десятков ПК только для обновления одного ПК - это перебор. Обновлять только одного клиента из нескольких десятков, на которых идёт синхронизация - самая большая глупость, которую я только слышал. Ты хочешь, чтобы новые таблицы не синхронизировались или синхронизация падала на удалённых таблицах или чтобы синхронизировалась только часть данных в модифицированных таблицах? Обычно либо весь кластер обновляется за раз в одно технологическое окно, либо обновляется мастер-нода, а изменения расползаются на подчинённые автоматически с помощью той же синхронизации. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 17:28 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
1. Посылаю эвент приложению. Приложение включает таймер на 5 минут и выводит сообщение, мол прошу завершить работу, иначе через 5 минут приложение будет завершено принудительно. Кто за компьютером, им 5 минут хватает на завершение, а кто ушел и оставил комп, ну, значит не надо, приложение само завершает работу по таймеру. 2. Чтобы за эти 5 минут не подключились новые пользователи, в триггере на подключение "отшиваю" всех, кроме себя Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
закрытие приложений (их может быть несколько на одну БД) регулирую состоянием соответствующих генераторов. gen_close_all_app закрывает всю БД от всех приложений ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 18:50 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
СПМ> Я бы попросил... Дедовский способ Я ж с маленькой буквы написал. Сисдба менять, конечно, надо, но я говорил с т.з. их текущих реалий. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 19:00 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Я вас умоляю, какой кластер? просто десятки касс, разбросанных по городу/городам. такое обновление может идти даже не один день ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 19:38 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747такое обновление может идти даже не один день Но ты так и не рассказал как идёт синхронизация на частично обновлённую кучку машин. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 20:06 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Но ты так и не рассказал как идёт синхронизация на частично обновлённую кучку машин. Да там-то проблем нет - где обновились на новую версию - там идёт синхронизация, где не обновились - не идёт. При том реально-то проблем с конвертированием баз-то пока не было зарегистрировано, но клиент жалуется непонятно на что, вот я и подумал, что тут МОЖЕТ возникать именно такая проблема. Но клиент жалуется на другое ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 20:38 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747, ну хорошо. Обновление на ЦБД прошло. А как потом синхронизатор синхронизирует DDL и DML после обновления? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 01:48 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Cobalt747такое обновление может идти даже не один день Тогда просто останавливаешь сервер, обновляешь базу в embedded mode, запускаешь сервер обратно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:35 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Для (Linux) классика - не "просто". Но это уже отмечалось. P.S. В очередной раз повторил: "Я буду внимательнее". ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:37 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Тогда просто останавливаешь сервер, обновляешь базу в embedded mode, запускаешь сервер обратно. Хотя я бы рекомендовал выпилить сисдба. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:44 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
А в чём проблема его погасить-то? Ах да, в 2.1, я тоже должен тренировать внимательность. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:49 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Да внимательность и сейчас не вредно тренировать. Просто потому, что fbguard может вернуть ошибку при остановке процесса firebird и сервис будет перестартован, как "упавший". Не часто, но бывает. Ну и для винды сценарий "процесс завершился с ненулевым кодом и SCM его перестартовал" - вполне реален. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 13:15 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Да внимательность и сейчас не вредно тренировать. Просто потому, что fbguard может вернуть ошибку при остановке процесса firebird и сервис будет перестартован, как "упавший". Не часто, но бывает. Ну и для винды сценарий "процесс завершился с ненулевым кодом и SCM его перестартовал" - вполне реален. он был оправдан на 95/98. но стюардессу до сих пор не закопали... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 14:31 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov А в чём проблема его погасить-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 15:13 |
|
подскажите способ запретить подключиться к базе (на время)
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky есть файрвол ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 15:26 |
|
|
start [/forum/topic.php?fid=40&msg=39984307&tid=1560284]: |
0ms |
get settings: |
12ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
156ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
others: | 250ms |
total: | 527ms |
0 / 0 |