Forum

Son 7 günü...
 
Bildirimler
Hepsini Temizle

Son 7 günün yedeğini bırakıp eski yedekleri silmek

7 Yazılar
6 Üyeler
0 Reactions
1,740 Görüntüleme
(@ZelihaTASDEMiR)
Gönderiler: 2
New Member
Konu başlatıcı
 

Merhabalar, Sql veritabanı yedeklerini düzenli olarak bir dizine alıyoruz ve bu dizinde sadece son bir haftanın yedeklerinin kalmasını istiyorum.

Şu an eski dosyaları manuel olarak silmek zorunda kalıyoruz, son 7 yedeğin kalmasını nasıl sağlayabilirim.

 
Gönderildi : 09/07/2009 02:26

(@muratcan-2)
Gönderiler: 2192
Üye
 

Merhaba,


Yedi gün için farklı isimlerde backuplama ayarlayın ve hafta döndüğü zaman üzerine yazacak şekilde yararların.


İyi çalışmalar.

 
Gönderildi : 09/07/2009 02:56

(@orhanakdogan)
Gönderiler: 311
Reputable Member
 

 Merhaba, Son 30 gün lazım olursa 🙂 
Aşağıdaki vbs kodu, tanımlanan dizindeki, tanımlanan günden daha eski(dosya değişiklik tarihi) dosyaları,
alt dizinler dahil silmektedir.


'----------------


SonKacGun = 7
Yedekdizini = "C:\YedekDizinim"


Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objDizin = objFSO.GetFolder(Yedekdizini) 
Set colaltdizin = objDizin.Subfolders
Set colDizin = objDizin.Files 


For Each objFile in colDizin 
   If objFile.DateLastModified < (Date() - SonKacGun) Then  
       objFile.Delete 
   End If 
Next 



For Each objSubfolder in colaltdizin 
   Set colDizin = objSubfolder.Files 
   For Each objFile in colDizin 
       If objFile.DateLastModified < (Date() - SonKacGun) Then  
           objFile.Delete 
       End If 
   Next 
Next 

 
Gönderildi : 09/07/2009 03:44

(@sinankahraman)
Gönderiler: 5224
Illustrious Member
 

Teorik olarak yedekler şu şekilde depolanmalıdır.

  1. Günlük yedek 1 Hafta (7 gün)
  2. Haftalık yedek  1 Ay (4 hafta)
  3. Aylıklar 1 Yıl (12 ay)
  4. Yıllıklar 3 yada 5 yıl.

Yapmak istediğiniz olay bana biraz tehlikeli geldi. Orhan Beyimde dediği gibi örneğin Ocak 2009 da bir yedeğe dönmeniz gerektiğinde ne yapacaksınız?

 
Gönderildi : 09/07/2009 11:08

(@ZelihaTASDEMiR)
Gönderiler: 2
New Member
Konu başlatıcı
 


 Merhaba, Son 30 gün lazım olursa 🙂 
Aşağıdaki vbs kodu, tanımlanan dizindeki, tanımlanan günden daha eski(dosya değişiklik tarihi) dosyaları,
alt dizinler dahil silmektedir.


'----------------


SonKacGun = 7
Yedekdizini = "C:\YedekDizinim"


Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objDizin = objFSO.GetFolder(Yedekdizini) 
Set colaltdizin = objDizin.Subfolders
Set colDizin = objDizin.Files 


For Each objFile in colDizin 
   If objFile.DateLastModified < (Date() - SonKacGun) Then  
       objFile.Delete 
   End If 
Next 



For Each objSubfolder in colaltdizin 
   Set colDizin = objSubfolder.Files 
   For Each objFile in colDizin 
       If objFile.DateLastModified < (Date() - SonKacGun) Then  
           objFile.Delete 
       End If 
   Next 
Next 



3 veritabanı var, Scripti kullanmak daha mantıklı gibi.


script tam olarak isteğimi karşılıyor, çok teşekkürler.

 
Gönderildi : 09/07/2009 16:47

(@FiratAKCAY)
Gönderiler: 33
Eminent Member
 

 sql server 2005 kullanıyorsanız maintanance plan'a girip orda sol taraftaki toolbox'tan maintanance cleanup task'ı seçip burada "Delete Files based on the age of the file at task run time" check box'ını işaretleyip aşağıyada 7 day derseniz otomatik olarak silecektir.

 
Gönderildi : 20/08/2009 18:00

(@yasin_can)
Gönderiler: 191
Reputable Member
 

Ben ForFiles.exe ile gerekli işlemi sonunda yaptım. Umarım sizin de işinize yarar

http://www.tekdosya.com/files/WR57569SP/f885f3612ba41e0fc00dac6d670354d3/forfiles.exe.html

forfiles.exe /p "C:\test" /s /m *.* /d -30 /c "cmd /c del @file"

    
/p     This parameter specifies the path that contain the files I wish to delete.
/s     This parameter tells the program to recurse into any subfolders to look for additional files.
/m     If you want to specify a specific file type, this parameter will allow you to limit the search to specific files, such as *.doc for Word documents. In my case, I looked for all files (*.*).
/d     This one is the key parameter – it specifies the last modified date value. In my example I specify “-7″ which indicates that the files need to have a modified date 7 days less than the current date.
/c     This is the command that I execute on the files found by the program. The delete command is executed in a command window for each file.

 
Gönderildi : 26/06/2012 19:56

Paylaş: