1. Objectif Général
Cet outil de maintenance pour bases de données Firebird effectue une opération de sauvegarde suivie d'une restauration (backup & restore). Ce processus optimise la base de données en reconstruisant les index et en nettoyant les enregistrements obsolètes.
Le programme est conçu pour fonctionner de deux manières : un mode automatique qui traite séquentiellement tous les profils d'un fichier .ini, et un mode manuel pour les opérations ciblées.
2. Modes d'Exécution
L'outil propose deux modes de fonctionnement distincts :
Mode 1 : Maintenance Séquentielle (Logique .ini)
C'est la fonction principale. Le programme traite tous les profils (ex: CEPH, KITVIEW) définis dans le fichier BacRes.ini. Ce mode peut être lancé de deux façons :
- Via l'interface graphique (GUI) : En cliquant sur le bouton "Démarrer Toute la Maintenance". L'interface affiche la liste des profils, la progression et un journal en temps réel.
- Via Ligne de Commande (CLI) : En exécutant le programme avec l'argument
cli. Ce mode silencieux est conçu pour l'automatisation (par ex: via le Planificateur de tâches Windows).
Mode 2 : Tâche Manuelle (GUI uniquement)
Pour les opérations spécifiques, un bouton "Tâche Manuelle..." ouvre une fenêtre dédiée. Ce mode permet à l'utilisateur de :
- Sélectionner manuellement un fichier de base de données (
.fdb) qui n'est pas dans l'INI. - Choisir d'effectuer une sauvegarde de sécurité (permanente, horodatée) avant de commencer la maintenance.
- Lancer le même cycle complet de maintenance (arrêt service, maintenance, redémarrage service) sur ce seul fichier.
3. Configuration via le Fichier BacRes.ini
La configuration de l'outil repose sur le fichier BacRes.ini, qui doit se trouver dans le même dossier que l'exécutable.
- Profils (ex:
[CEPH]) : Chaque section est un profil à traiter et doit contenirBDD_PATH(le chemin vers le.fdb) etBACKUP_PATH(le dossier où les sauvegardes de maintenance seront créées). [SETTINGS](Optionnel) : Permet de définir la langue (language=frouen).[CLIENT](Optionnel) : Contient les informations (nombre,id_licencia) utilisées pour les rapports d'erreur par email.
4. Déroulement du Processus de Maintenance
Que la maintenance soit lancée pour tous les profils (Mode 1) ou pour une tâche manuelle (Mode 2), le processus est le suivant :
- Arrêt Global (Une seule fois) : Le script vérifie et arrête le service
KitviewProxyServiceou le processusKitProxySrv.exepour libérer l'accès aux bases de données. - Traitement de chaque BDD :
- Étape A (Vérification) : L'état de la BDD est vérifié avec
gstat. Si elle est déjà en mode "maintenance", le script ignore l'étape suivante pour éviter une erreur. - Étape B (Déconnexion) : Si la BDD est active,
gfixest utilisé pour la mettre en mode maintenance et forcer la déconnexion de tous les utilisateurs réseau. - Étape C (Sauvegarde de sécurité - Mode Manuel uniquement) : Si l'option est cochée, une sauvegarde de sécurité (
.safety_DATE.fbk) est créée dans le dossier de la base de données. - Étape D (Maintenance) : Le cycle
gbak(sauvegarde temporaire suivie d'une restaurationgbak -c -rep) est exécuté. - Étape E (Nettoyage) : Le fichier de sauvegarde temporaire utilisé pour la maintenance est supprimé.
- Étape A (Vérification) : L'état de la BDD est vérifié avec
- Redémarrage Global (Une seule fois) : Une fois toutes les opérations terminées, le service ou processus arrêté à l'étape 1 est redémarré.
5. Journalisation et Rapports d'Erreur
- Journalisation : Toutes les opérations sont enregistrées (en mode "ajout" pour conserver l'historique) dans le fichier
maintenance_log.log, situé dans le même dossier. - Notification d'Échec : Si une étape critique échoue (en mode GUI ou CLI), le programme envoie automatiquement un email de notification. Cet email, rédigé dans la langue définie, inclut les informations du
[CLIENT]et attache lemaintenance_log.logcomplet (renommé en.txt) pour une analyse immédiate.
6. Prérequis
- Privilèges : Le programme nécessite des droits d'administrateur pour gérer les services Windows (
net stop/start). - Dépendances : L'outil doit pouvoir localiser les exécutables
gbak.exe,gfix.exeetgstat.exe. Il les recherche automatiquement dans les chemins d'installation standards de Firebird (v2.5, 3.0, 4.0).
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.