s.a
mysql veritabanı kulllanılarak hazırlanmış bir programım var yedekleme yapmak istiyorum günlük yedek alıcak bunu nasıl yaptırabilirim
yardımlarınız için şimdiden teşekkürler
s.a
mysql yedekleme
mysql yedekleme
Kainat dahi bir programdır ve şüphesiz onun bir programcısı vardır...
Kod: Tümünü seç
procedure Tfr_yedek.bt_yedekle_dershaneClick(Sender: TObject);
var
dosyasay: integer;
sonuc : TSearchRec;
tablolar: string;
begin
dg_kapa.FileName := copy(DateToStr(now),1,2)+'-'+copy(DateToStr(now),4,2)+'-'+copy(DateToStr(now),7,4)+'_'+copy(timeToStr(now),1,2)+'-'+copy(timeToStr(now),4,2)+'-'+copy(timeToStr(now),7,4)+'_dershane';
dosyasec := false;
dg_kapa.Execute;
if dosyasec=false then exit;
try
mkdir(extractfilepath(application.exename)+'\Yedek');
except
dosyasay := FindFirst(extractfilepath(application.exename)+'\Yedek\*.*', faAnyFile - faDirectory, sonuc);
while dosyasay = 0 do
begin
deletefile(extractfilepath(application.exename)+'\Yedek\'+sonuc.Name);
dosyasay := FindNext(sonuc);
end;
FindClose(sonuc);
end;
tablo_oku.Close;
tablo_oku.SQL.Clear;
tablo_oku.SQL.Add('show tables FROM dershane');
tablo_oku.Open;
tablolar:= tablo_oku.Fields[0].Text;
tablo_oku.Next;
while tablo_oku.Eof = false do
begin
tablolar:=tablolar+','+tablo_oku.Fields[0].Text;
tablo_oku.Next;
end;
tablo_oku.Close;
tablo_oku.SQL.Clear;
tablo_oku.SQL.Add('backup table '+tablolar+' to '''+stringreplace(extractfilepath(application.exename),'\','/',[rfReplaceAll])+'/Yedek''');
tablo_oku.ExecSQL; //burada tüm tabloların istediğim klasöre yedeklenmesini sağladım.
zip_kapa.FileName := dg_kapa.FileName;
dosyasay := FindFirst(extractfilepath(application.exename)+'\Yedek\*.*', faAnyFile - faDirectory, sonuc);//burada abrivia companentiyle çıkan yedeklerin zip lenmesini sağladım.
while dosyasay = 0 do
begin
zip_kapa.AddFiles(extractfilepath(application.exename)+'\Yedek\'+sonuc.Name,0);
dosyasay := FindNext(sonuc);
end;
FindClose(sonuc);
dosyasay := FindFirst(extractfilepath(application.exename)+'\Yedek\*.*', faAnyFile - faDirectory, sonuc);
while dosyasay = 0 do
begin
deletefile(extractfilepath(application.exename)+'\Yedek\'+sonuc.Name);
dosyasay := FindNext(sonuc);
end;
FindClose(sonuc);
rmdir(extractfilepath(application.exename)+'\Yedek'); //buraya kadar oluşan templeri sildim.
tablo_oku.Close;
tablo_oku.SQL.Clear;
tablo_oku.SQL.Add('update ayarlar set yedek_tarih="'+mtarih(now())+'"');
tablo_oku.ExecSQL; //yedeklendiğine dair kayıt.
messagedlg('Dershane için yedek alma işlemi başarıyla tamamlandı.', mtInformation ,[mbOK], 0);
end;
mysql backup table ile yedekleme hatası
bu şekilde yedek alıyorum myisam tablolarım... yedeğimi aldıktan sonra nasıl restore edicem kopyala yapıştır yapıca err :2 hatası veriyo nedendir
.net icat oldu mertlik bozuldu