powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FIBPus Backup/Restor
31 сообщений из 31, показаны все 2 страниц
FIBPus Backup/Restor
    #39246592
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго времени суток.
Подскажите как правильно с помощью компонента FIBPlus делать Backup/Restor.
Точнее Backup у меня уже получилось сделать, но когда я в IBExpert открыл таблицу на редактирование и параллельно открыл приложение чтобы сделать Backup - программа сделала Backup и даже ничего не сказала что есть активные подключения.

Отсюда вытекает вопрос:
Как программно проверить есть ли активные соединения с БД, и если их нет (конечно кроме моего одного) - только тогда делать Backup.

Насколько небезопасен может быть такой метод создания резервной копии. Это нужно т.к. уровень пользователя который будет пользоваться программой, мягко говоря, ниже плинтуса. Поэтому научить их делать полноценный Backup/Restor - это проблема. Даже просьба выйти из программы на всех клиентах для создания резервной копии может просто проигнорироваться.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246593
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как программно перевести БД в монопольный режим, и после Backup/Restor вернуть назад нормальный режим
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246605
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushНасколько небезопасен может быть такой метод создания резервной копии.

Нинасколько. Это совершенно штатный способ. Для бэкапа не требуется монопольное подключение.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246623
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush,

бэкап - это вычитка и переливка данных в файл бэкапа в транзакции snapshot. Таких приложений можно одновременно стартовать хоть миллион.
http://www.ibase.ru/gbak/
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246670
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть в "плюсах" компонент работы с сервисами. Через него и шатдаун базе делать можно, и в онлайн её переводить.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246799
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала автору надо понять что такое транзакция snapshot и как она работает.
p.s. года два ходил на курсы по MS SQL, подобные вопросы ("мы делаем бэкап, данные которые мы вносим в базу в него попадут?") были в топе.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246821
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar,

Из комментария kdv я понял что для бэкапа стартует транзакция и все изменения которые вносятся во время бэкапа - можно сказать мусор, если придется делать рестор.
Но вопрос остался на повестке дня: как узнать что к базе никто не подключен, кроме меня. Думаю сделать проверку, и если пользователи подключены - выдавать сообщение пока не выйдут и не делать бэкап.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246835
stelvic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какой смысл так заботиться о данных, внесенных во время бекапа? Чем они более ценны, чем те, что будет внесены через секунду после команды - "можно работать"?
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246837
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для каких целей создаётся бэкап?
Какой смысл для текущего бэкапа выгонять всех, если равно после завершения бэкапа пользователи начнут работу и нальют новых данных, которых не будет в только что сформированном бэкапе?
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246838
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush,

что за бред?
Мусор это никому не нужные версии. Мусор никогда и не при каких условиях не попадёт в файл бекапа который делается с помощью gbak.

И кстати это не единственный вариант бекапа.

akrushПоэтому научить их делать полноценный Backup/Restor - это проблема.

backup ты можешь делать и без их ведома. restore пользователю в общем случае не нужен, только когда есть проблемы.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246855
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushНо вопрос остался на повестке дня: как узнать что к базе никто не подключен, кроме меня. Думаю сделать проверку, и если пользователи подключены - выдавать сообщение пока не выйдут и не делать бэкап.
Вообще подключения ты увидишь в таблице mon$attachments, проверку ты можешь сделать триггером на коннект, но зачем?
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246865
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush я понял что для бэкапа стартует транзакция и все изменения которые вносятся во время бэкапа - можно сказать мусор, если придется делать рестор.


SNAPSHOT (константа concurrency) – уровень изоляции, эквивалентный Repeatable Read. На самом деле этот уровень изоляции ближе к "изолированность образа", т. к. не допускает фантомов. Все операции в транзакции с данным уровнем изоляции видят только те данные, которые существовали (committed) на момент старта этой транзакции (даже если они впоследствии были изменены или удалены другими транзакциями). По умолчанию в IB/FB API.
Скопипащено с http://ibase.ru/ibtrans/ ,заходи и читай.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246868
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И ещё вот - http://ibase.ru/mga/ - читай про многоверсионность. Так отпадет вопрос "а как делать бэкап с подключенными пользователями".
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246869
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

Я не имел ввиду что в бэкап попадет мусор. Я имел ввиду что данные которые вводятся во время бэкапа, если вдруг понадобится сразу сделать рестор - будут по сути мусором, т.к. пропадут.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246882
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В чем суть вопроса или самой программы.

Разрабатывается программа для расчета субсидии на жилищно-коммунальные услуги (Украина). Точнее пишется по Винду.
Когда поднимаются тарифы или еще что-то и нужно сделать массовый перерасчет - нужно сделать бэкап, запустить перерасчет.
Во время перерасчета никто ничего не вводит т.к. после перерасчета выборочно нужно проверить правильность расчета и ЕСЛИ расчет НЕПРАВИЛЬНЫЙ - сделать рестор для отката изменений.
Это первый вариант, так сейчас делаем в ДОС программе по субсидии.

Второй вариант - я читал здесь на форуме что можно стартануть транзакцию, сделать все что нужно, но не подтверждать. Посмотреть ИЗМЕНЕНИЯ и если все нормально - подтвердить, если ошибка - откатить.
Это был, точнее будет, мой следующий вопрос. Не хочу засорять ветку обсуждения Backup/Restor, но если ткнете носом куда почитать - буду очень признателен.

Понимаю что все это звучит примитивно, но я стараюсь разобраться во всем этом.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246884
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushСимонов Денис,

Я не имел ввиду что в бэкап попадет мусор. Я имел ввиду что данные которые вводятся во время бэкапа, если вдруг понадобится сразу сделать рестор - будут по сути мусором, т.к. пропадут.

Перед бэкапом переименуй файл БД. Если не удалось - то есть коннекты. Если удалось - то после переименовки никто не сможет подключиться по старому имени т.к. оно теперь другое.
Это нормально работает на винде, но под юниксами не прокатит.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246887
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush,

Как все запущено...
Вы пытаетесь заложить неправильную последовательность действий.
Рестор нельзя рассматривать как штатный способ отката неверных расчетов.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246892
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraksakrushСимонов Денис,

Я не имел ввиду что в бэкап попадет мусор. Я имел ввиду что данные которые вводятся во время бэкапа, если вдруг понадобится сразу сделать рестор - будут по сути мусором, т.к. пропадут.

Перед бэкапом переименуй файл БД. Если не удалось - то есть коннекты. Если удалось - то после переименовки никто не сможет подключиться по старому имени т.к. оно теперь другое.
Это нормально работает на винде, но под юниксами не прокатит.

Таким образом я могу переименовать, скопировать и переименовать назад и мне не нужно делать бэкап/рестор.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246897
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushfraksпропущено...


Перед бэкапом переименуй файл БД. Если не удалось - то есть коннекты. Если удалось - то после переименовки никто не сможет подключиться по старому имени т.к. оно теперь другое.
Это нормально работает на винде, но под юниксами не прокатит.

Таким образом я могу переименовать, скопировать и переименовать назад и мне не нужно делать бэкап/рестор.

Собственно, я тоже не пойму зачем в вашей задаче (откатиться назад после неправильных расчетов) делать бэкап-рестор, тем более что это дольше :)
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246907
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushВо время перерасчета никто ничего не вводит т.к. после перерасчета выборочно нужно проверить правильность расчета и ЕСЛИ расчет НЕПРАВИЛЬНЫЙ - сделать рестор для отката изменений.
че-то жесть какая-то. если вам надо перерасчет выполнить в монопольном режиме, для этого есть транзакции с блокированием таблиц.
Но откатывать "рестором или копированием" - это какой-то запредельный способ.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246934
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrush,

вы мыслите в терминах файл-серверных СУБД. Рестор для отката это как-то слишком жёстко.

Помимо транзакций СУБД есть так называемые бизнес-транзакции. Они обычно делаются через статусы документов (на проверке, отклонён, проведён ...). Если надо делать откаты бизнес транзакций, то все изменения логируются и в случае необходимости по логу возвращаются в исходное состояние. Или даже можно сделать свою систему версий документов.

А ещё для временного просмотра и последующего подтверждения можно использовать GTT. В общем вопрос скорее по проектированию БД.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246935
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvakrushВо время перерасчета никто ничего не вводит т.к. после перерасчета выборочно нужно проверить правильность расчета и ЕСЛИ расчет НЕПРАВИЛЬНЫЙ - сделать рестор для отката изменений.
че-то жесть какая-то. если вам надо перерасчет выполнить в монопольном режиме, для этого есть транзакции с блокированием таблиц.
Но откатывать "рестором или копированием" - это какой-то запредельный способ.

не такой уж запредельный.

в свое время так и считали налоги. в субботу приходишь, оставляешь в сети только себя и сервер, делаешь резервную копию, считаешь.
срослось (процесс вероятностный, 80% - успех) - оставляешь как есть, нет - по новой.

в понедельник утром докладываешь консилиуму инспекторов результаты - по отмашке втыкаешь сервер в общую сеть.

только было это в прошлом веке, и на фокспро.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246949
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pastor,

это что за процессы там такие, при расчете, что по одним и тем же данным может "то сойтись", и то "не сойтись"? Типа рандомного калькулятора, что-ли? И почему нельзя посмотреть, где не сошлось, исправить, и пересчитать?

я все же подозреваю, что автор не в курсе транзакций, в т.ч. транзакций snapshot, в которых можно хоть до посинения пересчитывать.
В конце-концов, есть же и программные механизмы, чтобы запретить менять старые данные, и т.д.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246966
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvpastor,

это что за процессы там такие, при расчете, что по одним и тем же данным может "то сойтись", и то "не сойтись"? Типа рандомного калькулятора, что-ли? И почему нельзя посмотреть, где не сошлось, исправить, и пересчитать?


200 тыс налогоплательщиков, примерно столько же объектов обложения.
фокспро в дос-режиме, с использованием расширенной памяти типа DOS-GW (или как его там).
может тупо умереть на нехватке памяти, перестроении индексов, переполненнии количества блокировок, открытых файлов и пр.

расчет делался на клиентской машине со специально заточенной win95, с highmem и пр. припарками, битвой за каждый бит.
база тащилась по нетвари (коаксиалу) на эту админскую машину, после удачи - обратно в нетварь

так что вопрос был не в сошлось/не сошлось (это все равно разгребать по заявлениям, платежкам и пр.), а в дошло до конца или нет.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246971
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,
Ткните носом где почитать про snapshot
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246976
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У автора в голове каша, читать доку до просветления.

akrushнаучить их делать полноценный Backup/RestorЗАЧЕМ?

Делать бэкап средствами gbak (или через сервисы с исп. фиб-ов) можно "на горячую". Это штатная "фича",ничего при этом не сломается. Делать каждый раз рестор после бэкапа не надо, это глупо.
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246986
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushkdv,
Ткните носом где почитать про snapshot
Тебя уже ткнули
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246988
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraksя тоже не пойму зачем в вашей задаче (откатиться назад после неправильных
расчетов) делать бэкап-рестор
Ясно же написано: потому что "так делалось в старой программе под DOS".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39246989
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39247000
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akrushkdv,
Ткните носом где почитать про snapshot

Есть такая чУдная штука - документация. Даже на русском. И там написано про уровни изоляции транзакций.
Брать вот тут:
http://www.firebirdsql.org/en/reference-manuals/

Так же есть статьи на русском,
http://ibase.ru/transactions/
...
Рейтинг: 0 / 0
FIBPus Backup/Restor
    #39247041
akrush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemarakrushkdv,
Ткните носом где почитать про snapshot
Тебя уже ткнули

Уже увидел, спасибо. На форуме сообщения по странному размещаются. Судя по всему не по времени опубликования, а по времени начала написания. Поэтому Ваш комментарий сразу не заметил.
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FIBPus Backup/Restor
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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