Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
ВнизКак сделать Backup на клиентскую машину. Найти похожие ветки
← →
bSava (2003-11-26 10:38) [0]Подскажите мастера!!!
Так все хорошо, только вот Backup пишится на сервер, а мне нужно чтоб он писался на машину клиента, а как это сделать что-то ума не приложу.
(База данный Yaffil)
Зарание благодарен.
← →
Reindeer Moss Eater (2003-11-26 10:42) [1]Бэкап делает процесс сервера.
И как он по твоему может поиметь локальный диск клиента, работающего с ним?
← →
Danilka (2003-11-26 10:54) [2]после того как бакап сделан можешь файл бакапа записать хоть к клиенту, хоть на компашку и даше на дискетку, если влезет, причем можешь это сделать как дельфями, так и штатными средствами ОС, в чем проблема?
← →
Vlad (2003-11-26 11:05) [3]Почему бы не запустить gbak.exe с клиента ?
Правда не знаю, поймет ли он сетевой путь, но сервер всегда можно подключить как сетевой диск и будет тебе счастье
← →
Карелин Артем (2003-11-26 11:24) [4]IB не работает с сетевыми базами. И Бэкап нельзя делать на другие тачки.
Можно однако данные между серверами ИБ по сети передавать, но это уже из другой опреры.
← →
bSava (2003-11-26 11:38) [5]ОЧень жаль... А я так надеялся :) Ну ничего где наша не пропадала :)
← →
Zacho (2003-11-26 12:21) [6]
> bSava © (26.11.03 11:38) [5]
Вместо ServicesAPI используй gbak.exe, и будет тебе счастье. gbak создает файл бэкапа на том компе, на к-ром запускается.
← →
KDS (2003-11-26 12:40) [7]Я решил эту задачу так:
на сервере Linux прописал в планировщике заданий "cron"
каждую ночь делать бэкапы в отдельный каталог (мой домашний).
Утром я включаю свой рабочий ПК, из автозагрузки которого стартует программулина, забирающая эти быкапы, и архивирует ВинРАРом с добавлением номера дня недели.
Таким образом у меня получается архивы БД за последние 7 дней.
program DBRouter; {$IOCHECKS OFF}
uses IdGlobal, Windows,SysUtils, ShellApi; {$R *.res}
const dest="L:\Restore_GDB\"; //Куда складывать архивы
src="\\Ibserv\Builder\DBRestore\"; //откедава брать файлы
DBU96="RU96.gdb"; //название файла БД
type
TLogRec = record
Week: Char;
CopyDate: string[15];
Status: string[5];
end;
var pref:Char;
OK:Boolean;
LogFile: file of TLogRec;
LogRec : TLogRec;
cmdStr:AnsiString;
begin
AssignFile(LogFile,"c:\GDBRoute.log"); // Log-файл
//Была-ли уже сегодня копия
Reset(LogFile);
Read(LogFile, LogRec);
CloseFile(LogFile);
//№ дня недели. В англ ОС неделя начинается с воскресенья
pref:=IntToStr(DayOfWeek(Date))[1];
//если уже сегодня копировалось и нормально, то - нах...!
if (pref=LogRec.Week)and(LogRec.Status="OK ") then Exit;
//командная строка архиватора РАР
cmdStr:="A -ibck -o+ -tl -ep -ep1 -m2 "+dest+pref+"DB.rar @c:\backup.lst";
OK:=ShellExecute(0,nil,"WINRAR",PChar(cmdStr),nil,SW_SHOWDEFAULT)>32;
{файл backup.lst лежит в каталоге с самой прогой DBRouter.exe
и содержит перечень файлов БД для архивации}
LogRec.Week:=pref;
LogRec.CopyDate:=" "+DateToStr(Date);
if OK then LogRec.Status:="OK " else LogRec.Status:="Error";
Rewrite(LogFile);
Write(LogFile, LogRec);
CloseFile(LogFile);
//Писькает, коли глюкануло (тока на WinNT)
if not OK then Windows.Beep(1024,3000);
end.
← →
Danilka (2003-11-26 12:49) [8][7] KDS © (26.11.03 12:40)
если-бы ты был на самом деле ленивым, а не наполовину, то настроил-бы так, чобы бакап ночью писался на UDF-ную компашку и вообще не парился - только меняй компашки несколько раз месяц и усе. :))
← →
KDS (2003-11-26 13:00) [9]1-на сервере нет CD-RW. Он там и не нужен, поскольку это сервер
2-этот способ не годится с точки зрения безопасности. Кто попало может подойти и вытащить эту компашку
← →
Danilka (2003-11-26 13:06) [10][9] KDS © (26.11.03 13:00)
кому попало нечего делать в серверной :)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c