+7(962)919-86-60
Тирика-Магазин

Резервное копирование базы данных

Внимание!

В этой статье рассказывается, как восстановить базу данных программы из резервной копии, сделанной программой несколько дней назад. Этой системой нельзя пользоваться, если вы используете в работе синхронизацию баз данных. Если при настроенной синхронизации БД вы откатите одну из участвующих в синхронизации баз данных на резервную копию, то рано или поздно при синхронизации вы получите ошибку "primary key musst be unique", после чего синхронизация у вас никогда работать больше не будет; для того, чтобы восстановить синхронизацию, надо будет заново настраивать ее на пустых базах данных, потеряв т.о. все введенные в программу данные на всех участвующих в синхронизации компьютерах.

Узнать, настроена ли у вас синхронизация баз данных, несложно. Для этого выберите, пожалуйста, в программе пункт меню Файл|Настройки|Синхронизация и в открывшемся окне проверьте номер базы данных. Если там стоит число "-1" (минус один), значит, синхронизацию БД вы не используете.

Введение

Программа Тирика-Магазин использует в работе две системы управления базами данных: систему SQLite в случае локального использования, то есть если вы не настраивали програму для работы в сети и используете ее на одном компьютере, и систему FireBird при работе в сети. Обе эти системы хранения данных чрезвычайно надежны и имеют встроенные механизмы восстановления данных после сбоев - даже фатальных сбоев вроде отключения электропитания. Нужно, однако, понимать, что встроенные в систему управления данными программные средства защиты от сбоев и восстановления - это что-то вроде подушек безопасности в автомобиле: они значительно повышают ваши шансы в случае аварии, но если водитель не соблюдает правил разумной езды, то подушки могут и не спасти.

Программа Тирика-Магазин обладает двумя дополнительными возможностями обезопаситься от сбоев и сохранить свои данные в критических ситуациях, фигурально выражаясь - дает вам как "водителю" этого "автомобиля" инструменты безопасной езды. Давайте рассмотрим их по очереди.

Отступление. А какую базу данных я использую?

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

Определить этот режим очень просто: для этого запустите программу Тирика-Магазин и выберите пункт меню Файл|Настройка, после чего переключитесь на вкладку Сеть. Если выпадающий список на этой вкладке установлен в положение "Одновременно будет работать только один человек", программа работает в локальном режиме, в любом другом случае она работает в сетевом режиме:

Режим работы программы

Автоматическое резервное копирование

Однопользовательская версия

По умолчанию программа Тирика-Магазин настроена так, что каждый день при первом запуске программы она будет автоматически делать резервную копию вашей базы данных. В случае, если программа работает в локальном (однопользовательском) режиме, программа складывает резервные копии базы данных в подпапку \Backups\ той папки, куда установлена программа, скорее всего это будет C:\Program Files\Tirika Shop\Backups\. Создавая очередную резервную копию базы данных, программа не затирает прошлую резервную копию, но размещает новую копию рядом со старой, называя файл резервной копии по дате ее создания, например 2012-02-22.zip для резервной копии, созданной 22 февраля 2012 года.

Некоторые резервные копии в имени файла включают также и время, например файл 2012-02-20-11-51-23.zip был создан 20 февраля 2012 года в 11 часов 51 минуту 23 секунды. Такие "внеплановые" резервные копии программа создает при установке обновлений в случае, если это обновление изменит структуру базы данных; кроме "длинного" имени файла "внеплановые" резервные копии ничем не отличаются от "плановых":

Резервные копии однопользовательской версии программы;

Прежде чем восстанавливать данные из резервной копии убедитесь, что программа Тирика-Магазин у вас закрыта.

Внимание!
Вы должны понимать, что восстанавливая базу данных из резервной копии, вы удаляете текущую базу данных программы. Так, например, если сегодня 20 февраля 2012 года и файл резервной копии называется 2012-02-20.zip, то он скорее всего был создан утром 20 февраля при первом старте программы и хранит базу данных с данными по вечер 19 февраля включительно. Восстановив из резервной копии эту базу данных, вы потеряете все данные, созданные за 20 февраля. Таким образом, восстанавливать базу данных из резервной копии имеет смысл только в том случае, если ваша рабочая база данных, например, испорчена.

Для того, чтобы восстановить данные из резервной копии программы, вам достаточно найти нужную резервную копию по дате (скорее всего это будет последняя по дате резервная копия. Если таких у вас две - с закодированном в имени файла временем и без него - выбирайте ту, что со временем, она скорее всего новее), "зайти" в нее двойным щелчком мыши в Проводнике Windows. Собственно файл резервной копии - это ZIP-архив, поэтому после двойного мыши по этому архиву вы либо "зайдете" в него как в папку Windows, либо же у вас запустится дополнительная программа типа WinZip, WinRar или 7-Zip, в которой вы сможете "зайти" в этот архив как в папку.

Открываем резервную копию программой WinRar
Вот так может выглядеть, например, окошко winrar после двойного щелчка мыши в проводнике по файлу резервной копии

Пройдите опять по дереву папок внутри архива с резервной копией (Program Files\Tirika Shop) и найдите в самой последней по очереди папке единственный хранящийся в архиве файл - файл shop.db. Это и есть резервная копия базы данных программы. Разархивируйте ее в ту папку, куда установлена программа Тирика-Магазин, заменяя файлом резервной копии актуальную базу данных программы, и на этом восстановление базы данных из резервной копии закончено. Вы можете теперь запустить программу Тирика-Магазин.

Сетевая версия

Для того, чтобы правильно понимать эту главу, вам необходимо ознакомиться со статей, описывающей настройки программы для работы в сети, так как здесь мы часто ссылаемся на понятия, определенные в ней, например, "компьютер Альфа" или "сервер баз данных FireBird". Если вы не читали статью о сетевых настройках программы, пожалуйста, прочтите ее сейчас.

Если вы используете сетевую версию программы Тирика-Магазин, вернее, если программа Тирика-Магазин работает у вас в сетевом режиме, резервные копии базы данных хранятся на компьютере "Альфа". Переключитесь на компьютер Альфа и перейдите на диск C: этого компьютера. В корневой папке диска C: вы увидите несколько файлов с именем типа shop-2012-02-22.fbk - это и есть резервные копии базы данных. Эти файлы имеют вид shop-гггг-мм-дд.fbk, где гггг, мм и дд - год, месяц и день создания резервной копии соответственно. Некоторые резервные копии могут также иметь вид shop-гггг-мм-дд-чч-мм-сс.fbk, где чч, мм и сс - часы, минуты и секунды времени создания резервной копии. Резервные копии "с секундами" - это "внеплановые" резервные копии, описанные в предыдущей главе этой статьи.

Перед восстановлением данных из резервной копии убедитесь, что программа Тирика-Магазин закрыта (не запущена) на всех тех компьютерах, где она установлена. Если хотя бы один пользователь будет работать с базой данных FireBird в момент восстановления данных из резервной копии, восстановить данные не удастся.

Внимание!
Вы должны понимать, что восстанавливая базу данных из резервной копии, вы удаляете текущую базу данных программы. Так, например, если сегодня 20 февраля 2012 года и файл резервной копии называется 2012-02-20.zip, то он скорее всего был создан утром 20 февраля при первом старте программы и хранит базу данных с данными по вечер 19 февраля включительно. Восстановив из резервной копии эту базу данных, вы потеряете все данные, созданные за 20 февраля. Таким образом, восстанавливать базу данных из резервной копии имеет смысл только в том случае, если ваша рабочая база данных, например, испорчена.

Процесс восстановления базы данных из резервной копии сетевой версии программы Тирика-Магазин сильно отличается от аналогичного процесса в случае использования локальной версии. Выберите резервную копию, из которой вы хотите восстановить данные, и запомните ее имя файла, после чего нажмите кнопку Пуск|Все Программы|Стандартные|Командная Строка и в открывшемся окне введите последовательно перечисленные ниже команды, после каждой нажимая кнопку Enter на клавиатуре. В списке команд ниже даны комментарии к каждой команде, их, разумеется, на клавиатуре набирать не надо; в предпоследней команде имя файла shop-2012-02-24.fbk нужно заменить на имя файла той резервной копии базы данных, которую вы выбрали для восстановления :

Восстановление из резервной копии базы данных FireBird

Список команд выше дан для случая, когда вы устанавливали сервер баз данных FireBird 2.5 из скачанного с нашего сайта дистрибутива программы и не меняли его настроек; показателем этого служит то, что в окне Файл|Настройки|Сеть программы Тирика-Магазин выпадающий список установлен у вас в положение Одновременно может работать несколько человек:

Режим работы программы

Если же эта настройка программы у Вас установлена в позицию Для IT-специалистов и приведенная выше последовательность команд не восстанавливает данные из резервной копии, для операции восстановления данных вам необходимо обратиться к тому специалисту, который настраивал вам программу для работы в сети.

Создание резервной копии вручную

Создание резервной копии программы вручную и восстановление данных из такой резервной копии - существенно более простой процесс по сравнению с работой с автоматически создаваемыми программой резервными копиями. Мы рекомендуем вам время от времени делать вручную резервные копии базы данных программы и сохранять их на внешних носителях: на флешке, на другом компьютере и тюпю с тем, чтобы застраховаться от потери данных при серьезной поломке компьютера, на котором установлена база данных программы Тирика-Магазин или его жесткого диска.

Собственно процесс изготовления резервной копии предельно прост: вам нужно просто скопировать файл базы данных программы на другой носитель. О том, где находится файл базы данных программы и как его найти, написано в этой статье

Также интересно почитать

Архивирование документов
Как ускорить программу Тирика-Магазин
Ускорение работы списка покупателей
Очистка базы данных

Следующая статья: Интеграция Тирики и системы Samosale