Копирование и восстановление БД Firebird в Qt, back up and restore DB Firebird in Qt |
Здравствуйте, гость ( Вход | Регистрация )
Копирование и восстановление БД Firebird в Qt, back up and restore DB Firebird in Qt |
Steklova Olga |
17.10.2013, 17:24
Сообщение
#1
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Здравствуйте Моя Qt-программа работает с БД Firebird.
В книжках пишут, что рекомендуется регулярно копировать (back up) и восстанавливать (restore) БД. Для этих целей может использоваться как утилита командной строки gbak, так и программа IBExpert. Рассматриваем случай, когда юзер ничего не понимает в gbak и IBExpert, зато он спец в части конкретных данных, записанных в БД. Только с ними он и хочет работать. И ему дела нет до того, что БД периодически надо как-то администрировать. Бондарь приводит пример как решить этот вопрос в Delphi с помощью компонентов FIBPlus. А что делать в Qt? Тут есть для этого какие-то средства? А gbak можно запустить из Qt? И еще... Какое количество записей в БД делает вопрос регулярного копирования и восстановления действительно актуальным? Как решить, надо мне это делать или нет? Дело в том, что будущее кол-во записей в БД и частота их редактирования мне неизвестны. |
|
|
Iron Bug |
17.10.2013, 20:41
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
изобретать велосипеды с бэкапом не рекомендую. если есть утилька из командной строки, то лучше программно вызывать её.
ибо бэкап - это не просто архивирование, а ещё проверка на целостность и вообще он делается при стабильном состоянии базы, когда к ней нет коннектов. чаще всего юзер не парится с бэкапами, это задача админа. но если база мелкая и чисто юзерская, то можно просто вызывать бэкап утилькой. в БД важно не количество, а качество для юзера и одна запись может иметь некую информационную ценность. поэтому такие вещи либо выносятся в конфиг, либо передаются в ручное управление юзера: когда захотел, тогда и забэкапил. |
|
|
Steklova Olga |
18.10.2013, 11:13
Сообщение
#3
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
если есть утилька из командной строки, то лучше программно вызывать её. с помощью QProcess?такие вещи... выносятся в конфиг который конфиг?Firebird support hot backup |
|
|
Iron Bug |
18.10.2013, 11:27
Сообщение
#4
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
|
|
|
Litkevich Yuriy |
20.10.2013, 17:53
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
В книжках пишут, что рекомендуется регулярно копировать (back up) и восстанавливать (restore) БД. насчёт последнего в книжках какая-то фантазия. Резервные копии делают, на всякий случай, а не для регулярного восстановления.А gbak можно запустить из Qt? с помощью QProcess? верно.А вообще Firebird СУБД специфическая, там нужно тонко всё настроить, чтобы БД не пухла из-за умерших транзакций. Т.к. Firebird хранит версии состояний. |
|
|
Steklova Olga |
21.10.2013, 12:20
Сообщение
#6
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
|
|
|
Litkevich Yuriy |
21.10.2013, 16:57
Сообщение
#7
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Читай про Sweep-интервал
|
|
|
Текстовая версия | Сейчас: 29.3.2024, 14:17 |