Powershell ve Taskscheduler ile basit bir backup sistemi kuralım
0

Bu konuda 15 mesaj var

Şirketteki muhasebe veritabanı için günlük yedekleme alacak bir sistem oluşturmam gerekiyordu. Önerilen backup yöntemi tüm klasörün yedeklenmesi olduğu için ben de oturup bunu nasıl otomatik hale getiririm diye uğraştım. Ek program kullanmadan tamamen windowsun kendi iç toolları ile bunu yapmak daha cazip geliyordu açıkçası. 

 

Çözüm Powershell + Task Scheduler oldu.

$backupdate = Get-Date -UFormat %d-%m-%y
$source = "c:\DBFOLDER"
$destination = "\\SERVER\Backup\DB_"+$backupdate+".zip" 
echo $backupdate
$batfile = [diagnostics.process]::Start("C:\DBFOLDER\SQL_Durdur.bat")
$batfile.WaitForExit()

Add-Type -assembly "System.IO.Compression.Filesystem"
$zipfile = [io.compression.zipfile]::CreateFromDirectory($source, $destination)

$batfile = [diagnostics.process]::Start("C:\DBFOLDER\SQL_Baslat.bat")
$batfile.WaitForExit()

Bunu yaptıktan sonra

 

Task Scheduler üzerinde yeni bir task oluşturup

 

Powershell.exe -ExecutionPolicy Bypass -File C:\backup.ps1

 

parametreleri ile elevated privilage olacak şekilde çalıştırmak için her gece saat 00:00 a programladım. Triggers kısmından yapılabilir. Bu sayede klasör her gece saat 00:00 da ziplenecek ve sunucuda istediğim klasöre kopyalanacak. 

 

 

ObiWan beğendi

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Onu da ekleriz :D

 

Bu arada bu işlem için .net 4.5 yüklü olması gerekiyor sistemde. Windows 8 ve yukarısı için çok dert değil de win 7 veya server işletim sistemlerinin bunu kurması gerekiyor. Olmadı 7zip ile de bu işlem yapılabilir. Shell üzerinden de yapmak mümkün ama biraz daha kod gerektiriyor sanırım. 

 

Bu arada şirketin IT işleri bende zaten start-up olması nedeniyle. 

analog beğendi

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

aynen task scheduler + win default backup aracıyla yapardık eskiden bunu. her dc'deki tape bakcuplar günlük backup alırdı filan.. yarayışlı bi sistemdir.

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

net stop ve net start komutlarıyla SQL server 2008 servislerini durdurup başlatıyorlar. Açıkçası powershell e ekleyebilirdim direk ama kasmadım. Uğraşasım gelmedi. Firmanın kurulumunda oraya yerleştirilmiş scriptler olduğu için doğrudan kullandım. 

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

.NET ile OOP eklentileri standart komut satırında olmayan bir durum. .NET ile command line automation için powershell şarttı. Bence gayet de kullanışlı. Ayrıca Powershell in görünmeyen bir sürü başka özelliği var. Unsigned Script çalıştırmama gibi...

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Poweshell windows için çok önemli hale geldi, herkesin öğrenmesi fayda sağlar, hele ki az çok teknik tarafı olanlara çok daha fazlasını vaat ediyor.

 

@@SkyWarrior

 

Neden Sql servislerini durduruyorsun yedekleme öncesinde, onu anlamadım? Doğrudan mdf/ldf dosyalarını mı kopyalıyorsun?

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Evet yazılımı yapan şirket o şekilde yapmış sistemi. Çok amelece biliyorum ben olsam hayatta öyle yapmam ama bunu muhasebe yazılımı yapan firmalara sormak lazım. 

 

O kadar amatör bir yazılım ki SQL Server 2008 Express sürümü üzerinde çalışıyor. Ve clientların dosyaya erişimi için doğrudan MDF dosyalarının olduğu klasörü ağda paylaşıma açma lüzumu var. 

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Ben yine anlamadım herhalde, her client'ta SQL Server Express mi kurulu ve bunlar ortak tek bir MDF'e mi bakıyor? Tek bir makinada SQL kurulumu yapıp, uygulamayı buna ağ üzerinden baktırmayı becerememişlerse nasıl muhasebe programı yapmışlar aklım almadı :D .

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Anamakina üzerinde SQL server kurulu mdf dosyaları da orada. Ama mdf dosyalarının olduğu klasörü paylaşıma açıyorlar tuhaf bir şekilde. Clientlarda sql server kurulu değil ama muhtemelen connector veya objeler doğrudan MDF dosyasını okuyacak şekilde yapılmış. Mallık işte. 

 

Açıkçası bana da tuhaf geldi. Ama sanırım bunu şey için yapmışlar kullanıcı sınırı getirmek adına böyle bir saçmalık koymuşlar yazılıma. Normalde SQL Server 2008 express de kullanıcı sınırı pek sorun değil ama bu adamlar aynı anda mdf dosyasına sadece bir kişi ulaşsın gibi bir olaya girmişler fazlası için lisans satıyorlar. 

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

O işte başka bir iş var, saçmalıktan öte bir şey değil. Bunlar connection string vermeyi mi beceremedi, ne halt yemeye böyle bir saçmalık yapıyorlar onu da anlamadım. 

 

İnşallah bilindik bir muhasebe uygulaması değildir. Ben 4-5 tane kullandım, çok saçma şeyler gördüm ama bu kadarına hiç şahit olmamıştım.

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Valla bir çok muhasebeci ucuz diye alıp kullanıyor bu yazılımı isim vermeyecem ama denk gelmişsindir muhtemelen. Berbat bişi. Firmayı en kısa zamanda bu yazılımdan kurtarmak niyetindeyim. 

Bu mesajı paylaş


Bu mesajın linki
Sosyal ağlarda paylaş

Yorum yazmak için üye olun veya giriş yapın

Yorum yazmak için üye olmanız lazım

Üye ol

Üye olun ve sitemizin tüm avantajlarından yararlanın!


Yeni bir hesap oluştur

Giriş yap

Zaten üyemiz misin? O halde giriş yap


Hemen giriş yap
0

  • Bu sayfadaki üyeler   0 üye

    Şu an bu sayfayı görüntüleyen bir üye yok