![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужно ли отрубать всех пользователей при BackUp? [D3]
TransparentGhost © (2004-07-06 11:13:00)Хочу сделать в своей проге BackUp, чтобы автоматически каждое утро делал рез. копию. Кто первый запустил прогу, тот и сделал BackUp. Нужно ли отрубать всех пользователей при BackUp, если одновременно прогу запустят несколько пользователей, или можно просто запретить им право на любое изменение в БД?
<D3, IB.6x.>
TransparentGhost (2004-07-06 16:33:00) [21]> Ты знаешь во сколько заканчивается рабочий день
Шеф может и до 12ти ночи засидеться.
Пока я решил сделать так :
Каждое утро при первом запуске программы автоматом будет создаваться BackUp. А вечером, последний юзер сам запустит BackUp, если не забудет.
Поймать конец рабочего дня, как и начало, не так просто... +- час, и комп могут отрубить и раньше чем сработает таймер :о)
bushmen (2004-07-06 16:19:00) [22]>Так что надо делать BackUp в рабочее время
Обычно, бэкап делают ПЕРЕД изменением ссостояния системы - в твоем случае перед тем как вытащить флэшку. Ты знаешь во сколько заканчивается рабочий день, вот и запускай бэкап минут за 20 до окончания рабочего времени
jack128 (2004-07-06 16:17:00) [23]
> вариант не плохой, но шеф может и о нём забыть :о)
от шефа нечего не потребуется. Нужно просто прописать твой батник в "Панель управления"/"Назначенные задания" и ежедневно в N часов M минут винда сама запустит это bat..
TransparentGhost (2004-07-06 16:07:00) [24][8] Ratiborr © (06.07.04 12:59) - тоже не плохая идея.
Есть одно НО ... ногами просьба не бить :о)
В роли сервера базы у нас выступает комп шефа. Отдельного сервера у на нет. Сама база находится на Флэшке, по окончании дня шеф отрубает флэшку и уносит, утром приносит, втыкает и все работают. бывает он забывает перед изъятием флэшки осадить кэш и если после последних изменений прошло мало времени база может накрыться. Пока хорошо что у меня постоянно есть последняя копия базы над которой я издеваюсь во время разработки проги. Но бывает и я не каждый день делаю копию, но пока всё проносило :о)
[8] - вариант не плохой, но шеф может и о нём забыть :о)
Ratiborr (2004-07-06 12:59:00) [25]А не проще батник написать на серваке на создание бэкапа в конце рабочего дня. затем просто сервак отключать(тоже через батник). постваить время выполнение 1-го батника, а в его тело вставить выполнение 2-го батника/либо выключение сервака.
мне кажется так проще всего.
TransparentGhost (2004-07-06 12:25:00) [26]Вроде-бы всё сделал (процедуры BackUp/Restore), осталось только впихнуть в нужные места. Работает не так уж и долго 10 - 15 секунд, но база не большая, всего 17Мб. Пухнуть быстро не будет - в год примерно 9-10Мб (вместе с мусором). В самой большой таблице 70000 записей за 2.5 года, остальные намного меньше.
Думаю пользователи переживут 15ти секундную задержку 1 раз в день.
Всем спасибо.
jack128 (2004-07-06 11:43:00) [27]
> если конечно не сопровождается "сборокой мусора".
а по умолчанию, как раз таки сопровождается ;-)
> Ну про всякие Depth?
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1087821905&n=1
Sergey_Masloff (2004-07-06 11:31:00) [28]BackUp это всего лишь ReadOnly транзакция так что другие пользователи ему не мешают. По ресурсам он тоже не тяжелый (если конечно не сопровождается "сборокой мусора". Так что делать можно но совет Danilka © ИМХО лучше.
jack128 © (06.07.04 11:19) [3]
>Но учти BackUp - весьма тяжкий процесс, так что твои проги >могут тормозить..
Ничего он не тяжелый без garbage collect
<off>
Забыл я в какой ветке мы про малоуникальные индексы на больших таблицах говорили. Не напомнишь? Ну про всякие Depth?
</off>
TransparentGhost (2004-07-06 11:29:00) [29]Сервак с базой на ночь отрубается.
Так что надо делать BackUp в рабочее время.
С BackUpами раньше не сталкивался, потому и прошу совета дабы не разгуливать по граблям.
Реализовать думаю через FIB.
jack128 (2004-07-06 11:19:00) [30]
> или можно просто запретить им право на любое изменение в
> БД?
даже этого можно не делать. Но учти BackUp - весьма тяжкий процесс, так что твои проги могут тормозить.. Поизучай параметры - gbak - можно весьма сильно процесс бакапа ускорить..
Danilka (2004-07-06 11:18:00) [31]
> Кто первый запустил прогу, тот и сделал BackUp
А просто на серваке в полночь бакап делать не судьба? :))
И проверить его сразу, живой он или нет, и лог админу, если битый бакап.
Хотя, если все-таки сделать так как в теме ветки, сделать в одном потоке, то неплохой саботаж получится, стимулирующий юзеров опаздывать на работу. :))
Johnmen (2004-07-06 11:15:00) [32]Теоретически можно "на лету".