Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис    FTP-сервер
АРМ Администратор :  ИРБИС Irbis
 
Страницы: <<12
Страница: 2 из 2
Re: Помогите настроить резервное копирование баз
Пользователь: -AND- (IP-адрес скрыт)
Дата: 20, January, 2014 13:02

Цитата:
OpenDB <RDR>
UnlockDB
ActualDB
CopyMF \\имяПКвсети\копия.bkp
CloseDB

Такое задание будет работать?
Не, не будет, Ирбис будет выдавать сообщение, что БД не нуждается в разблокировке и на этом задание будет останавливаться
Достаточно этого:
OpenDB CMPL
CopyMf E:\temp\cmpl.bkp
OpenDB RDR
CopyMf E:\temp\RDR.bkp
....
Exit E:\temp\backup_irbis.txt



Редактировано 1 раз. Последний раз 20.01.2014 13:02 пользователем -AND-.

Re: Помогите настроить резервное копирование баз
Пользователь: hardmid (IP-адрес скрыт)
Дата: 25, June, 2015 10:28

Бекап реализован следующим образом:

1. Стартует батник, в котором:

Цитата:
@echo off
net use y: /delete
net use z: /delete

rem // 1 объявляем переменные
@chcp 1251
rem // что копируем
SET SIRBIS=C:\IRBIS64
rem // куда временно копируем
SET CIRBIS=C:\backup_script\date
rem // куда архивируем
SET EIRBIS=E:\BACKUP_irbis
rem // куда копируем архив
SET ZIRBIS=y:\Библиотека\3_Бекапы_ИРБИС\2015\06

set login=домен\имяадмина
set password=парольадмина

rem // 2 переходим в стартовый каталог и начинаем работу скрипта
cd %CIRBIS%
chdir %DATE%

rem // 4 запись в лог, делаем отступ
echo ****** >>%CIRBIS%\%DATE%-log.txt
echo *** НАЧАЛО ВЫПОЛНЕНИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ СЕРВЕРА ИРБИС-64 >>%CIRBIS%\%DATE%-log.txt
echo ****** >>%CIRBIS%\%DATE%-log.txt

rem // 0 подключаем шару
@chcp 1251
ping -n 1 -w 100 fs > NUL
if not errorlevel 0 GOTO :fail
:NETUSE
echo %DATE% %TIME% 0001 SIRBIS ping fs - ОК >>%CIRBIS%\%DATE%-log.txt
net use y: \\fs\public %password% /user:%login%
if errorlevel 0 echo %DATE% %TIME% 0012 SIRBIS Подключение к fs - ОК >>%CIRBIS%\%DATE%-log.txt
goto step0
net use y: \\fs\public %password% /user:%login%
if not errorlevel 0 echo %DATE% %TIME% 0012 SIRBIS Подключение к fs - не ОК >>%CIRBIS%\%DATE%-log.txt goto fail

:step0
rem // 4 Выводим текущее время и делаем запись в лог
echo %DATE% %TIME% 0010 SIRBIS Начало бекап-скрипта - ОК >>%CIRBIS%\%DATE%-log.txt

rem // 3 переименовываем старые архивы
ren %EIRBIS%\%DATE%_older.rar %DATE%_older1.rar
ren %EIRBIS%\%DATE%.rar %DATE%_older.rar
echo %DATE% %TIME% 0011 SIRBIS Переименование архивов - ОК >>%CIRBIS%\%DATE%-log.txt

rem // 5 начинаем копирование
echo %DATE% %TIME% 0012 SIRBIS Копирование каталога - начато - ОК >>%CIRBIS%\%DATE%-log.txt
cd c:\
xcopy %SIRBIS%\* %CIRBIS%\%DATE%\ /s /e
rem /s - копирует все папки и подпапки, кроме пустых;

rem // 6 проверяем на отсутствие ошибок и делаем запись в лог
if errorlevel 0 echo %DATE% %TIME% 0012 SIRBIS Копирование каталогов - завершено - ОК >>%CIRBIS%\%DATE%-log.txt
rem ping -n 3 127.0.0.1 > nul

rem // 7 запускаем архивацию
echo %DATE% %TIME% 0013 SIRBIS Архивация каталогов - начато - ОК >>%CIRBIS%\%DATE%-log.txt
"c:\Program Files (x86)\WinRAR\rar.exe" a -ep1 -df -r %EIRBIS%\%DATE%.rar %CIRBIS%\%DATE%
rem a - добавить файлы в архив; -df - удалить файлы после архивации; -r - рекурсивно с подкаталогами;

:pause
echo %DATE% %TIME% 0000 SIRBIS пауза 10 секунд >>%CIRBIS%\%DATE%-log.txt
ping -n 3 127.0.0.1 > nul

rem // 9 проверяем наличие файла, делаем запись в лог при ошибке, критическая ошибка, конец скрипта
rename %EIRBIS%\%DATE%.rar %DATE%.rar
if not errorlevel 0 echo %DATE% %TIME% 9111 SIRBIS Архивация еще не завершена... >>%CIRBIS%\%DATE%-log.txt goto pause
rem // 8 проверяем наличие файла, делаем запись в лог при ошибке, критическая ошибка, конец скрипта
if exist %EIRBIS%\%DATE%.rar goto step1

:step1
rem // 14 проверяем архив на доступность, делаем запись в лог при занятости файла и снова в цикл
rem // пауза 10 секунд
echo %DATE% %TIME% 1000 SIRBIS пауза 10 секунд >>%CIRBIS%\%DATE%-log.txt
ping -n 3 127.0.0.1 > nul
rename %EIRBIS%\%DATE%.rar %DATE%.rar
if not errorlevel 0 echo %DATE% %TIME% 9111 SIRBIS Архивация еще не завершена... >>%CIRBIS%\%DATE%-log.txt goto step1

rem // 15 и еще раз проверяем, если ошибок нет, пишем в лог
rename %EIRBIS%\%DATE%.rar %DATE%.rar
if errorlevel 0 echo %DATE% %TIME% 0013 SIRBIS Создание архива - завершено - ОК >>%CIRBIS%\%DATE%-log.txt

:step2
rem // 11 копируем получившийся архив на fs
@chcp 1251
xcopy %EIRBIS%\%DATE%.rar %ZIRBIS%\ /s /e /y /i
if not errorlevel 0 echo 3333 Твою мать....>>%CIRBIS%\%DATE%-log.txt goto fail


:step3
rem // 12 делаем контрольную запись в лог
echo %DATE% %TIME% 0013 SIRBIS Проверка на наличие архива в целевой папке... >>%CIRBIS%\%DATE%-log.txt
rem // пауза 10 секунд
echo %DATE% %TIME% 2000 SIRBIS пауза 10 секунд >>%CIRBIS%\%DATE%-log.txt
ping -n 3 127.0.0.1 > nul


rem // 13 проверяем наличие файла, делаем запись в лог при ошибке, критическая ошибка, конец скрипта
if not exist %ZIRBIS%\%DATE%.rar goto fail
rem // пауза 10 секунд
echo %DATE% %TIME% 3000 SIRBIS пауза 10 секунд >>%CIRBIS%\%DATE%-log.txt
ping -n 3 127.0.0.1 > nul

rem // 14 проверяем архив на доступность, делаем запись в лог при занятости файла и снова в цикл
rename %ZIRBIS%\%DATE%.rar %DATE%.rar
if not errorlevel 0 echo %DATE% %TIME% 9111 SIRBIS Выгрузка архива - еще не завершено... >>%CIRBIS%\%DATE%-log.txt goto step3

rem // 15 и еще раз проверяем, если ошибок нет, пишем в лог
rename %ZIRBIS%\%DATE%.rar %DATE%.rar
if errorlevel 0 echo %DATE% %TIME% 0014 SIRBIS Выгрузка архива - завершено - ОК >>%CIRBIS%\%DATE%-log.txt

:step4
rem // 16 начинаем очистку, пишем в лог
echo %DATE% %TIME% 9115 SIRBIS Архив скопирован для бекапа, очистка начата - ОК >>%CIRBIS%\%DATE%-log.txt
del %EIRBIS%\%DATE%_older1.rar /s /q

rem // 17 заканчиваем отчет
echo %DATE% %TIME% 0016 SIRBIS Удаление временного архива - завершено - ОК >>%CIRBIS%\%DATE%-log.txt
rem пауза 10 секунд
echo %DATE% %TIME% 4000 SIRBIS пауза 10 секунд >>%CIRBIS%\%DATE%-log.txt
ping -n 3 127.0.0.1 > nul

rem // 18 пишем стоп
net use y: /delete
echo %DATE% %TIME% 0017 SIRBIS Завершение бекап-скрипта - ОК >>%CIRBIS%\%DATE%-log.txt
echo ****** >>%CIRBIS%\%DATE%-log.txt
echo *** КОНЕЦ ВЫПОЛНЕНИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ СЕРВЕРА ИРБИС-64 >>%CIRBIS%\%DATE%-log.txt
echo ****** >>%CIRBIS%\%DATE%-log.txt
exit

:fail
net use y: /delete
echo *************************** >>%CIRBIS%\%DATE%-log.txt
echo ВНИМАНИЕ! ОШИБКА! >>%CIRBIS%\%DATE%-log.txt
echo %DATE% %TIME% 9999 SIRBIS Аварийное завершение бекап-скрипта - FAIL >>%CIRBIS%\%DATE%-log.txt
echo *************************** >>%CIRBIS%\%DATE%-log.txt
exit


Аналогичный батник работает для любой другой папки, если указать в параметрах.
Логи пишутся тут же, в указанные файлы.
Пример лога:
http://puu.sh/iC3R4/fa0aa00f0a.png



Редактировано 1 раз. Последний раз 25.06.2015 11:58 пользователем hardmid.

Re: Помогите настроить резервное копирование баз
Пользователь: hardmid (IP-адрес скрыт)
Дата: 25, June, 2015 11:57

2. В планировщике заданий выставлены параметры запуска последовательно предыдущих двух скриптов для бекапа и еще один скриптик:

Цитата:
@echo off
@chcp 1251

SetLocal EnableExtensions
set BackUpFolder=E:\Backup_irbis
set KeepNumFiles=2

move %BackUpFolder%\JIRBIS-%DATE%.rar %BackUpFolder%\JIRBIS
move %BackUpFolder%\%DATE%.rar %BackUpFolder%\SIRBIS

@echo. & @echo Script Start: & @echo.
@rem Get LIST of Directories --------------------------------------------
@pushd %BackUpFolder%>dirs.log 2>&1
find "The system cannot find the path specified." < dirs.log > nul
if errorlevel 1 (
@for /f "tokens=* delims=" %%D in ('dir /ad /b /o-d') do call :FromDir %%D
) else (
@echo Wrong Path %BackUpFolder% in param "BackUpFolder": Location did not find!
@echo Wrong Path %BackUpFolder% in param "BackUpFolder": Location did not find!>>erase_old_files.log
exit
)
@exit /b
@popd

:FromDir
@set NumFiles=%KeepNumFiles%
@set CurrentDir=.\%1
@echo Directory: %CurrentDir%
DIR "%CurrentDir%" /B /A-D /o-d>dirs.log 2>&1

find "File Not Found" < dirs.log > nul
if errorlevel 1 (
@for /f "tokens=* delims=" %%1 in ('DIR "%CurrentDir%" /B /A-D /o-d') do call :CheckFiles %%1
@exit /b
) else (
@echo Directory %1 is EMPTY!
@echo %date% %time%: Script detected, that Folder "%CurrentDir%" is EMPTY!>>erase_old_files.log
@exit /b
)

:CheckFiles
if not %NumFiles%==0 set /a NumFiles-=1&exit /b
@echo File deleted: %1
@echo %date% %time%: erase %CurrentDir%\%1>>erase_old_files.log
erase "%CurrentDir%\%1"
@exit /b


А этот скрипт перемещает полученные архивы каждый в свою папку, проверяет количество и даты и удаляет из папок на диске Е все предыдущие бекапы, оставля два крайних за последние два дня (бекап ежедневный).

+пишет логи проделанных операций.



Редактировано 1 раз. Последний раз 25.06.2015 11:59 пользователем hardmid.

Re: Помогите настроить резервное копирование баз
Пользователь: hardmid (IP-адрес скрыт)
Дата: 25, June, 2015 12:04

Итого, действия происходят так:

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

Часть первая, каждый скрипт-бекап делает свою часть:

1. Копируем каталог в "бекапную" папку на диске С.
2. Архивируем каталог на диск Е
3. Проверяем наличие (проверкой на переименование) созданного архива, если ок, удаляем папку.
4. Подключаемся, проверяем доступ к сетевой папке.
5. Запускаем копирование на шару.
6. Проверяем наличие (проверкой на переименование) копии архива на шаре.
7. Дописываем логи.

Вторая часть:

1. Запуск "чистильщика".
2. Перенос файлов на Е в свои подпапки, проверка
3. Удаление лишних (устаревших) копий.
4. Запись действий в логи.

Никаких шаманствов и плясок с бубнами не надо.
Место для хранения бекапов в любой момент можно изменить.
Бекапы разворачиваются путем тупейшего копипаста.

Re: Помогите настроить резервное копирование баз
Пользователь: hardmid (IP-адрес скрыт)
Дата: 21, July, 2015 15:19

ALEX_CIT000 написал(а):
-------------------------------------------------------
> Прилагаю файл (работает более 8 лет).
> Конечно можно и через .ibf _ файл, но возникают
> блокировки - я от этого отказался


добре. если кто-нибудь когда-нибудь тут это увидит...
не понял что делать со следующим:

1. C:\RAR - что там должно быть? Логично, что архиватор? Почему в корне? Какой версии или все равно какой?
2. файл rar.txe - что это за файл?

3. Я правильно понял, что нужно в планировщик вбить все 6 заданий, каждое на старт батника со своей цифрой-параметром согласно дня недели? И они все должны быть запущены?



Редактировано 1 раз. Последний раз 21.07.2015 15:50 пользователем hardmid.

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 20, January, 2017 11:50

Добрый день! Подскажите возникает проблема при копировании баз ирбис64. Запускаю копирование через предлагаемую документацией копию irbisa.ini с указанием ibf на сервере. При работе скрипта запускается Ирбис Администратор и выдает что базы не обнаружены.eye rolling smiley

Вложения: back2.PNG (43.7KB)   Back1.PNG (15.1KB)  
Re: Помогите настроить резервное копирование баз
Пользователь: ochagova (IP-адрес скрыт)
Дата: 23, January, 2017 15:19

Почему-то на вашей картинке интерфейса Администратора - БД CMPL не открылась. Она должна была появиться в таблице интерфейса. В обычном режиме Администратора CMPL открывается?

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 24, January, 2017 10:12

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

Re: Помогите настроить резервное копирование баз
Пользователь: ochagova (IP-адрес скрыт)
Дата: 24, January, 2017 11:44

Что-то не так с backup.ini. Приложите его.

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 25, January, 2017 13:40

Добрый день! Требуемый файл в приложении.

Вложения: backup.INI (1.4KB)  
Re: Помогите настроить резервное копирование баз
Пользователь: ochagova (IP-адрес скрыт)
Дата: 26, January, 2017 11:10

С INI все нормально, тем не менее базы CMPL не видно в таблице, а она должна была открыться. А если вы уберете строку copymf из backup.ibf и выполните тот же старт, то БД будет открыта?

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 27, January, 2017 10:05

Здравствуйте.Ошибка не исчезает после того как убрали данную строку. Подскажите есть ли какие либо примеры составления файлов для резервного копирования или более актуальное руководство по автоматизации задач в Irbis64 чем то что существует в сети? Возможно в них есть какие-то ошибки.. Есть ли другой вариант создание резервной копии БД?

Re: Помогите настроить резервное копирование баз
Пользователь: Gena (IP-адрес скрыт)
Дата: 27, January, 2017 10:17

Я такую точно картинку смог получить при одном условии - испорченный par-файл для базы. Приложите к сообщению файлы ibis.par и cmpl.par

AVD System, Техническая поддержка, [www.open4u.ru]

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 30, January, 2017 09:32

Доброе Утро! Во вложение указанные Вами файлы.

Вложения: CMPL.PAR (189 bytes)   IBIS.PAR (189 bytes)  
Re: Помогите настроить резервное копирование баз
Пользователь: Gena (IP-адрес скрыт)
Дата: 30, January, 2017 10:48

Приложите файл ibf

AVD System, Техническая поддержка, [www.open4u.ru]

Re: Помогите настроить резервное копирование баз
Пользователь: variag (IP-адрес скрыт)
Дата: 30, January, 2017 11:10

Файл backup.ibf во вложении.

Вложения: backup.IBF (216 bytes)  
Страницы: <<12
Страница: 2 из 2


Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.