Avant de commencer, assurez-vous que :
Vérifiez vos chemins : Le script ci-dessous utilise les chemins typiques d'une installation standard (C:\portier\vision5\PORTIERVISION.GDB et le chemin Firebird 4 par défaut). Si votre installation ou votre base de données se trouve ailleurs, ajustez FBPATH et DBPATH en conséquence.
Firebird (par ex. version 4.0) est installé sur votre systÚme,
vous disposez des droits d'écriture sur le dossier de sauvegarde,
le fichier gbak.exe existe (généralement dans le répertoire d'installation de Firebird),
et le Planificateur de tĂąches Windows est disponible.
đ» Script de sauvegarde automatique silencieuse Firebird
Nom du fichier : portier_backup.bat
@echo off
setlocal EnableExtensions EnableDelayedExpansion
:: ================== Settings ==================
set "FBPATH=C:\Program Files (x86)\Firebird\Firebird_4_0\gbak.exe"
set "DBPATH=C:\portier\vision5\PORTIERVISION.GDB"
set "BKPATH=C:\portier\Backup"
set "USER=SYSDBA"
set "PASS=masterkey"
set "RETENTION_DAYS_BACKUPS=14"
set "RETENTION_DAYS_LOGS=30"
:: ====================================================
:: --- Pre-checks & create folder ---
if not exist "%BKPATH%" mkdir "%BKPATH%" 2>nul
if not exist "%BKPATH%" exit /b 2
if not exist "%DBPATH%" exit /b 3
if not exist "%FBPATH%" exit /b 4
:: --- Timestamp for unique filenames ---
for /f %%i in ('powershell -NoProfile -Command "(Get-Date).ToString(\"yyyy-MM-dd_HH-mm-ss\")"') do set "STAMP=%%i"
set "BKFILE=%BKPATH%\portier_%STAMP%.fbk"
set "LOGFILE=%BKPATH%\backup_log_%STAMP%.txt"
(
echo ==================================================
echo Backup started: %DATE% %TIME%
echo gbak : "%FBPATH%"
echo DB : "%DBPATH%"
echo Target: "%BKFILE%"
echo ==================================================
) >> "%LOGFILE%"
:: --- Execute backup silently ---
"%FBPATH%" -b -v -user %USER% -pas %PASS% "%DBPATH%" "%BKFILE%" >> "%LOGFILE%" 2>&1
set "RC=%ERRORLEVEL%"
if "%RC%"=="0" (
echo [%DATE% %TIME%] Backup OK >> "%LOGFILE%"
) else (
echo [%DATE% %TIME%] ERROR, Code %RC% >> "%LOGFILE%"
)
:: --- Cleanup old backups ---
echo. >> "%LOGFILE%"
echo [%DATE% %TIME%] Cleaning: *.fbk older than %RETENTION_DAYS_BACKUPS% days >> "%LOGFILE%"
forfiles /p "%BKPATH%" /m *.fbk /d -%RETENTION_DAYS_BACKUPS% /c "cmd /c del /q /f @path" 2>> "%LOGFILE%"
:: --- Cleanup old logs ---
echo [%DATE% %TIME%] Cleaning: Logs older than %RETENTION_DAYS_LOGS% days >> "%LOGFILE%"
forfiles /p "%BKPATH%" /m backup_log_*.txt /d -%RETENTION_DAYS_LOGS% /c "cmd /c del /q /f @path" 2>> "%LOGFILE%"
echo ================================================== >> "%LOGFILE%"
echo Backup completed. >> "%LOGFILE%"
endlocal & exit /b %RC%ParamĂštres â DĂ©finit les chemins et identifiants pour Firebird, la base de donnĂ©es et le dossier de sauvegarde, ainsi que la durĂ©e de rĂ©tention des fichiers.
VĂ©rifications prĂ©alables â VĂ©rifie l'existence des dossiers et fichiers requis ; quitte avec un code d'erreur si absent.
Horodatage â GĂ©nĂšre un horodatage unique (yyyy-MM-dd_HH-mm-ss) pour chaque fichier de sauvegarde et de log.
ExĂ©cution silencieuse â ExĂ©cute gbak.exe en mode silencieux, en enregistrant toute la sortie dans un fichier log au lieu de l'afficher Ă l'Ă©cran.
Gestion des erreurs â Ăcrit le succĂšs ou l'Ă©chec (avec code retour) dans le fichier log.
Nettoyage â Supprime automatiquement les anciennes sauvegardes et fichiers log dĂ©passant la durĂ©e de rĂ©tention dĂ©finie.
Codes de sortie â Retourne un code de sortie au systĂšme (0 = OK, 3 = base de donnĂ©es manquante, etc.), utile pour les outils de surveillance.
==================================================
Backup started: 13.10.2025 07:00:01
gbak : "C:\Program Files (x86)\Firebird\Firebird_4_0\gbak.exe"
DB : "C:\portier\vision5\PORTIERVISION.GDB"
Target: "C:\portier\Backup\portier_2025-10-13_07-00-01.fbk"
==================================================
Starting backup...
gbak: creating file C:\portier\Backup\portier_2025-10-13_07-00-01.fbk
gbak: writing data...
gbak: finishing, closing, and going home
[13.10.2025 07:01:12] Backup OKPour exécuter la sauvegarde automatiquement (par exemple, chaque nuit à 2h00) :
Ouvrez le Planificateur de tĂąches Windows (taskschd.msc)
Cliquez sur Créer une tùche
Sous GĂ©nĂ©ral :Nom : portier Firebird Backup SilentCochez ExĂ©cuter avec les privilĂšges les plus Ă©levĂ©sCochez ExĂ©cuter mĂȘme si l'utilisateur n'est pas connectĂ©
Sous DĂ©clencheurs :Nouveau â Quotidien â Heure : 02:00
Sous Actions :DĂ©marrer un programme â Chemin : C:\portier\backup\portier_backup_silent.bat
Enregistrez et testez la tĂąche avec Clic droit â ExĂ©cuter.
â Le script s'exĂ©cute dĂ©sormais en arriĂšre-plan, sans console ni confirmation, uniquement des logs.
Ce script de sauvegarde silencieuse Firebird offre un moyen simple et fiable de protéger automatiquement votre base de données, sans intervention utilisateur.
Il enregistre chaque opĂ©ration, supprime automatiquement les anciens fichiers et peut ĂȘtre planifiĂ© via le Planificateur de tĂąches Windows.