на главную страницу программы "Водяной"

Инструменты пользователя

Инструменты сайта


архив

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
архив [2019/12/09 13:35]
timofeev
архив [2023/01/08 13:24] (текущий)
timofeev
Строка 1: Строка 1:
 ====== Архивирование базы данных "​Водяного"​ ====== ====== Архивирование базы данных "​Водяного"​ ======
 Существует несколько способов создать копию базы:\\ Существует несколько способов создать копию базы:\\
-1) скопировать файл базы, путь к которому указан при запуске программы (в нижней строке окна выбора базы данных ). Перед копированием ​следует закрыть программу и остановить службу сервера Firebird ​ (при копировании и параллельно с работой,​ целостность копии ​не может ​гарантироватьсясделанную ​копию следует проверить на исправность,​ прежде чем предпринимать дальнейшие действия).\\+1) скопировать файл базы, путь к которому указан при запуске программы (в нижней строке окна выбора базы данных ). Перед копированием ​желательно ​закрыть программу и остановить службу сервера Firebird ​ (при копировании параллельно с работой, ​теоретически ​целостность копии может ​быть нарушена, копию следует проверить на исправность,​ прежде чем предпринимать дальнейшие действия).\\ 
 +Примечание. Файл с расширением ​ fdb - это полные данные базы, включая лицензию. Ни в каких иных файлах данные не хранятся. Удалив или перезаписав этот файл, вы теряете все данные без возможности восстановления!\\
 2) создать архивный файл формата fbk непосредственно из программы (запущенной на основной машине,​ где хранится база данных),​ выбрав сервис - создать архив. Важное примечание:​ архив создается утилитой gbak в отдельном процессе,​ поэтому копировать его сразу после получения сообщения об архивировании нельзя,​ подождите несколько минут до копирования или отправки полученного файла.\\ 2) создать архивный файл формата fbk непосредственно из программы (запущенной на основной машине,​ где хранится база данных),​ выбрав сервис - создать архив. Важное примечание:​ архив создается утилитой gbak в отдельном процессе,​ поэтому копировать его сразу после получения сообщения об архивировании нельзя,​ подождите несколько минут до копирования или отправки полученного файла.\\
 3) непосредственно утилитой gbak из командной строки,​ выполнив команды примерно следующего содержания (пути к базе надо менять по аналогии с п.1) :\\ 3) непосредственно утилитой gbak из командной строки,​ выполнив команды примерно следующего содержания (пути к базе надо менять по аналогии с п.1) :\\
-''​cd c:\Program Files\Firebird\Firebird_2_5\bin +<​code>​ 
-gbak -b "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ "​c:​\arhiv\vod.fbk"​ -user SYSDBA -pass masterkey\\ +cd c:\Program Files\Firebird\Firebird_2_5\bin ​  ​ 
-''​+gbak -b "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ "​c:​\arhiv\vod.fbk"​ -user SYSDBA -pass masterkey 
 +</​code>​
 ====== Настройка автоматического архивирования ====== ====== Настройка автоматического архивирования ======
 Архивирование базы выполняется с помощью утилиты gbak, входящей в состав Firebird.\\ Архивирование базы выполняется с помощью утилиты gbak, входящей в состав Firebird.\\
 Чтобы оно делалось автоматически,​ следует:​\\ Чтобы оно делалось автоматически,​ следует:​\\
 1) создать bat-файл примерно следующего содержания:​\\ 1) создать bat-файл примерно следующего содержания:​\\
-''​set CURDATE=%DATE%\\ +<​code>​ 
-set CURTIME=%TIME%\\ +set CURDATE=%DATE% 
-set Y=%CURDATE:​~6,​4%\\ +set CURTIME=%TIME% 
-set M=%CURDATE:​~3,​2%\\ +set Y=%CURDATE:​~6,​4% 
-set D=%CURDATE:​~0,​2%\\ +set M=%CURDATE:​~3,​2% 
-set H=%CURTIME:​~0,​2%\\ +set D=%CURDATE:​~0,​2% 
-set MIN=%CURTIME:​~3,​2%\\ +set H=%CURTIME:​~0,​2% 
-set S=%CURTIME:​~6,​2%\\ +set MIN=%CURTIME:​~3,​2% 
-path "​c:​\Program Files\Firebird\Firebird\bin"\\ +set S=%CURTIME:​~6,​2% 
-gbak -b "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ "​c:​\arhiv\vod.fbk"​ -user SYSDBA -pass masterkey\\ +path "​c:​\Program Files\Firebird\Firebird_2_5\bin"​ 
-copy "​c:​\arhiv\vod.fbk"​ "​c:​\arhiv\%Y%%M%%D%_%H%%MIN%%S%vod.fbk" ​''​+gbak -b "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ "​c:​\arhiv\vod.fbk"​ -user SYSDBA -pass masterkey 
 +copy "​c:​\arhiv\vod.fbk"​ "​c:​\arhiv\%Y%%M%%D%_%H%%MIN%%S%vod.fbk" ​ 
 +</​code>​
  
  
 [[http://​vodasoft.ru/​vod_arch.bat|Скачать bat-файл]] для создания архива\\ [[http://​vodasoft.ru/​vod_arch.bat|Скачать bat-файл]] для создания архива\\
 +
 В приведенном примере может потребоваться изменить:​\\ В приведенном примере может потребоваться изменить:​\\
 "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ – путь базы данных,​ которую архивируем (этот путь написан в нижней строке окна запуска программы при выборе требуемой базы).\\ "​C:​\Program Files\ctex\voda\base\voda1.fdb"​ – путь базы данных,​ которую архивируем (этот путь написан в нижней строке окна запуска программы при выборе требуемой базы).\\
Строка 32: Строка 37:
 Если всё сделано правильно,​ в папке c:\arhiv будут собираться файлы с именами вида 20120402_170426vod.fbk,​ где 20120402 обозначает 2 апреля 2012 года, а 170426 - время создания (17:​04:​26).\\ Если всё сделано правильно,​ в папке c:\arhiv будут собираться файлы с именами вида 20120402_170426vod.fbk,​ где 20120402 обозначает 2 апреля 2012 года, а 170426 - время создания (17:​04:​26).\\
  
-====== Отправка архива на электронную почту ​====== +====== Отправка архива на Яндекс-диск ​====== 
-Довольно удобный вариант - отправлять полученный архив на некоторый учше специально созданный) почтовый ящик. Для автоматизации ​отправки можно применить утилиту blat, позволяющую отсылать ​файл по почте из командной строки.\\ +С помощью широко известной утилиты curl можно созданный ​архив отправлять в облачное ​хранилище, позволяющее копировать ​HTTP-запросом, например, на яндекс-диск 
-К вышеприведенному ​примеру добавьте следующую ​строку, заполнив в ней данные почтового ящика.\+папку curl надо внутри папки с bat-файлом для архивирования.\\ 
- +К приведенному ​выше файлу следует ​добавить строки
-''​blat.exe ​-server smtp.yandex.ru ​-f ЭЛ.ПОЧТА ​-u ИМЯ ПОЛЬЗОВАТЕЛЯ ЭЛ.ПОЧТЫ ​-pw ПАРОЛЬ ЭЛ. ПОЧТЫ ​ -to ЭЛ.ПОЧТА -subject arhiv%Y%%M%%D% -body "arhiv vodjanogo"​ -attach vod.fbk +<​code>​ 
-''​ +cd curl\bin 
- +curl -T "​c:​\arhiv\vod.fbk"​ https://​webdav.yandex.ru/vod.fbk --user имя:​пароль 
-Файлы blat.exe и blat.dll надо разместить рядом ​с bat-файлом для архивирования. +</​code>​ 
 +подставив свои имя и пароль.
  
  
 ===== Восстановление базы из архива ===== ===== Восстановление базы из архива =====
 Для восстановления из архива создайте файл vosst.bat, в котором должны быть 2 следующие строки:​\\ Для восстановления из архива создайте файл vosst.bat, в котором должны быть 2 следующие строки:​\\
-''​path "​C:​\Program Files\FireBird\FireBird_2_5\bin\"​\\ +<​code>​ 
-gbak -c %1 vosst.fdb -user SYSDBA -pass masterkey -p 8192\\ +path "​C:​\Program Files\FireBird\FireBird_2_5\bin\"​ 
-''​+gbak -c %1 vosst.fdb -user SYSDBA -pass masterkey -p 16384 
 +</​code>​
 Примечание:​ путь, имя пользователя и пароль могут отличаться при индивидуальной настройке,​ но подходят для большинства установок.\\ Примечание:​ путь, имя пользователя и пароль могут отличаться при индивидуальной настройке,​ но подходят для большинства установок.\\
 После этого можно будет восстановить архив, выполнив команду vosst имя_архива.fbk,​ где имя_архива.fbk - тот архив, который вы хотите развернуть. В результате в папке должен появиться файл vosst.fdb, который можно переименовать и добавить в список баз программы.\\ После этого можно будет восстановить архив, выполнив команду vosst имя_архива.fbk,​ где имя_архива.fbk - тот архив, который вы хотите развернуть. В результате в папке должен появиться файл vosst.fdb, который можно переименовать и добавить в список баз программы.\\
Строка 62: Строка 68:
  
 Соответствующие функции (backup и restore) находятся в меню "​службы"​. Соответствующие функции (backup и restore) находятся в меню "​службы"​.
 +
 +[[адм_фб|вопросы администрирования баз]]
 +
архив.1575887731.txt.gz · Последние изменения: 2019/12/09 13:35 — timofeev