данных на сервере, и сливает в s3. сделал, все хорошо. теперь нужна вторая половина, которая будет забирать с s3 последний дамп сервера, и положит его на другой сервер. надо как-то отключить всех клиентов от всех баз, не дать им переконнектиться, подропать базы, и положить базы из бекапов на их место. баз много, но небольшиие все. количество баз увеличивается довольно регулярно, хардкодить имена баз даннных не хочется. работаю с постгресом через pg-client в баше(pg_dumpall, dropdb и прочее). собственно вопрос, как-то можно перевести базы в режим обслуживания, чтобы клиенты к ним не подключались? в принципе, могу и через psql запросы кидать, если надо будет. проблема огромная в том, что клиентов довольно дофига, и они быстрые. переподключаются мгновеннно.
ALTER DATABASE datname ALLOW_CONNECTIONS false; SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname='datname' AND backend_type='client backend';
Ага, что-то подобное, спасибо
Обсуждают сегодня