Forum

Otomatik sql durdur...
 
Bildirimler
Hepsini Temizle

[Çözüldü] Otomatik sql durdurup klasör yedeği alma

14 Yazılar
5 Üyeler
2 Reactions
1,076 Görüntüleme
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 
[#550879]

Herkese iyi akşamlar,

Tek bir .bat dosyası ile otomatik olarak, sql server durdurulup klasör yedeği alınabilir mi?

Klasör yedeği alınırken her seferinde üzerine yazmaması için klasör ismi yenilenebilir mi? Otomatik olarak

Elimde birden fazla tam yedek olmasını istiyorum. Bu işlemi bir program ile değil görev zamanlayıcısı ile .bat dosyası ile yapmak istiyorum.

 


 
Gönderildi : 09/11/2025 20:38
Hakan Uzuner
(@hakanuzuner)
Gönderiler: 33857
Illustrious Member Yönetici
 

Merhaba, evet bunu yapabilirsin, bu bat dosyasını zamanlanmış görev olarak tanımlaman yeterli;

@echo off
REM ============================
REM SQL Server klasör yedekleme scripti
REM ============================

REM Yedek alınacak kaynak klasör
set SOURCE=C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data

REM Yedeklerin kaydedileceği hedef klasör
set BACKUPROOT=D:\SQL_Yedekleri

REM Tarih-saat damgası oluştur (YYYYMMDD_HHMM)
for /f "tokens=2 delims==" %%I in ('"wmic os get localdatetime /value"') do set datetime=%%I
set datepart=%datetime:~0,8%
set timepart=%datetime:~8,4%
set FOLDERNAME=%datepart%_%timepart%

REM SQL Server servisini durdur
echo SQL Server servisi durduruluyor...
net stop MSSQLSERVER
if errorlevel 1 (
echo Hata: Servis durdurulamadı!
pause
exit /b
)

REM Yeni yedek klasörü oluştur
set BACKUPFOLDER=%BACKUPROOT%\Backup_%FOLDERNAME%
mkdir "%BACKUPFOLDER%"

REM Dosyaları kopyala (klasör yapısını koruyarak)
echo Yedekleme baslatiliyor...
xcopy "%SOURCE%\*" "%BACKUPFOLDER%\" /E /I /H /Y
echo Yedekleme tamamlandi: %BACKUPFOLDER%

REM SQL Server servisini tekrar başlat
echo SQL Server servisi yeniden baslatiliyor...
net start MSSQLSERVER

echo Islem tamamlandi.
pause


Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

 
Gönderildi : 10/11/2025 09:15
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

Çok Teşekkür Ederim.


 
Gönderildi : 10/11/2025 11:25
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

Hakan Bey,

Merhaba, Bu script dosyasına klasör sıkıştırmayı ekleyebilir miyiz? Nasıl? İnternetten baya bi araştırdım denedim olmadı. Teşekkürler tekrar


 
Gönderildi : 12/11/2025 02:43
Hakan Uzuner
(@hakanuzuner)
Gönderiler: 33857
Illustrious Member Yönetici
 

Özel sipariş almıyoruz 🙂 Üstünü siz geliştirebilirsiniz. Bu arada forumda daha önce sıkıştırılmış halini paylaşmıştım.


Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

 
Gönderildi : 12/11/2025 10:32
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

Ok sağolun 


 
Gönderildi : 12/11/2025 11:30
Hakan Uzuner
(@hakanuzuner)
Gönderiler: 33857
Illustrious Member Yönetici
 

Rica ederiz, kolaylıklar.


Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

 
Gönderildi : 12/11/2025 11:49
(@riza-sahan)
Gönderiler: 18017
_
 

Merhaba,

https://www.cozumpark.com/sql-script-ile-otomatik-backup-ve-restore/

https://www.cozumpark.com/batch-dosyasi-ile-dosya-sikistirma-ve-silme-islemleri/


1984 doğumluyum. 4 yaşından bu yana İstanbul’da yaşıyorum. Sırası ile aşağıdaki okullarda eğitim gördüm. Paşaköy ilkokulu (1990-1995) Kartal Zekeriyya Güçer İlköğretim Okulu(1995-1998) Ümraniye Teknik ve Endüstri Meslek Lisesi Bilgisayar Bölümü(1998-2001) Kocaeli Üniversitesi Bilgisayar Programcılığı(2002-2004) Anadolu Ünv. İşletme Fakültesi(2006-2009) Lise yıllarından sonra bir bilgisayar firmasının teknik servisinde mesleğe merhaba dedim. Outsource olarak Citibank ytl ve bina taşınma projesinde yer alarak 8 ay görev yaptım. Bu görevden sonra şu an çalışmakta olduğum yerde bilgi işlem sorumlusu olarak göreve başladım ve 18 yıldır görevimin başındayım.

 
Gönderildi : 03/12/2025 11:15
Hakan Uzuner reacted
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

Teşekkürler, tek bir script üzerinden; zamanlı, sıkıştırıyor, mail atıyor, sql i durdurup tekrar çalıştırıyor, 10 gün önceki yedekleri otomatik siliyor.

Zirve Yazılım klasör yedeği istediği için bu lazımdı


 
Gönderildi : 03/12/2025 11:56
(@resulsoydas)
Gönderiler: 1688
Noble Member
 

7/24 çalışan bir firma olsa ne yapacaklarmış. Çalışanları durdurup 'Durun Ben bir yedek alayım. Sonra devam edin." mı diyecekler.

Yaaa var yaa.. 


 
Gönderildi : 03/12/2025 14:54
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

Gönderen: @resulsoydas
↑

7/24 çalışan bir firma olsa ne yapacaklarmış. Çalışanları durdurup 'Durun Ben bir yedek alayım. Sonra devam edin." mı diyecekler.

Yaaa var yaa.. 

Demiyecekler, Zirve Drive ı kullanın diyecekler. Talebinize göre şu kadar GB boş alan şu fiyat diyecekler.

 


 
Gönderildi : 03/12/2025 20:27
(@oktayerdemm)
Gönderiler: 50
Trusted Member
 

@Yusuf Cengizhan ÇAĞAN

Merhaba,

Full halini buraya yükler misiniz lütfen , başka arkadaşlarda faydalansın...


 
Gönderildi : 03/12/2025 20:36
(@yusufcengizhancagan)
Gönderiler: 58
Estimable Member
Konu başlatıcı
 

iyi akşamlar,

script için Hakan Bey e teşekkür etmemiz lazım

 

@echo off
title SQL YEDEK - TEMIZ VE KESIN CALISAN VERSIYON
setlocal EnableDelayedExpansion

set SOURCE=C:\GO
set BACKUPROOT=D:\X

for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set dt=%%I
set FOLDERNAME=%dt:~0,8%_%dt:~8,4%

echo Servis durduruluyor...
net stop MSSQLSERVER >nul

mkdir "%BACKUPROOT%\Backup_%FOLDERNAME%" >nul
echo Kopyalaniyor...
xcopy "%SOURCE%\*" "%BACKUPROOT%\Backup_%FOLDERNAME%\" /E /I /H /Y >nul

echo Servis baslatiliyor...
net start MSSQLSERVER >nul

echo RAR yapiliyor...
"C:\Program Files\WinRAR\Rar.exe" a -m5 -ep1 -r -inul "%BACKUPROOT%\Backup_%FOLDERNAME%.rar" "%BACKUPROOT%\Backup_%FOLDERNAME%\" >nul
rd /s /q "%BACKUPROOT%\Backup_%FOLDERNAME%" >nul

echo Eski RARlar siliniyor...
forfiles /p "%BACKUPROOT%" /m Backup_*.rar /d -10 /c "cmd /c del @path" >nul 2>&1

REM ====== KESİN ÇALIŞAN MAİL (587 port + App Password) ======
set "[email protected]"
set "[email protected]"
set "PASS=xxxx xxxx xxxx xxxx" ← BURAYA GERÇEK 16 HANELİ ŞİFRENİ YAZ

powershell -ExecutionPolicy Bypass -Command ^
"$smtp = New-Object Net.Mail.SmtpClient('smtp.gmail.com',587); ^
$smtp.EnableSsl = $true; ^
$smtp.Credentials = New-Object System.Net.NetworkCredential('%FROM%','%PASS%'); ^
$msg = New-Object Net.Mail.MailMessage('%FROM%','%TO%','SQL Yedek %FOLDERNAME%','Yedek tamamlandı - %date% %time%'); ^
try { $smtp.Send($msg); Write-Host 'Mail geldi kral' -ForegroundColor Green } catch { Write-Host 'Mail hatası' -ForegroundColor Red }"

echo.
echo === TAMAMDIR ABI ===
echo Yedek: Backup_%FOLDERNAME%.rar
echo Tarih: %date% %time%
echo Mail gonderildi.
echo.
echo 5 saniye sonra pencere kapanacak...
timeout /t 5 >nul
exit

 

Yukarıdaki scripti kopyalayıp not defterine yapıştırın, farklı kaydet seçeneği ile yedek.bat - tüm dosyalar olarak masaüstüne kaydedin. Yedek alınacak klasörü ve yedeği nereye alacağınızı yol olarak belirtin, kendinize göre. Winrar x64 mutlaka yüklü olsun, smtp mail adresi ve şifresini girin, kendinize göre özelleştirin. SQL Servis adınızı kontrol edin "MSSQLSERVER" değilse değiştirin. Son olarak görev zamanlayıcısından görev oluşturun, basit görev ve test edin. 


 
Gönderildi : 04/12/2025 18:56
Oktay ERDEM reacted
(@oktayerdemm)
Gönderiler: 50
Trusted Member
 

ilginiz için teşekkür ederim.


 
Gönderildi : 05/12/2025 00:12
Paylaş: