Grosse mise à jour : - style moderne des tableaux et code - code structuré et factorisé - sql et sh affinés
63 lines
2.2 KiB
Markdown
63 lines
2.2 KiB
Markdown
# DB Report
|
|
|
|
Génère des rapports HTML détaillés sur la configuration d'un serveur et de ses bases de données Oracle.
|
|
|
|
## Fonctionnalités
|
|
|
|
- Génération d'un rapport de configuration pour le serveur hôte.
|
|
- Collecte automatique des bases de données Oracle en cours d'exécution.
|
|
- Génération d'un rapport HTML structuré et détaillé pour chaque base de données.
|
|
- Support pour les instances ASM et les PDBs (Pluggable Databases).
|
|
- Scripts modulaires pour une personnalisation facile.
|
|
|
|
## Prérequis
|
|
|
|
- Système Linux/Unix avec Bash.
|
|
- Oracle Database installé et configuré (avec `sqlplus` et `oraenv`).
|
|
- Permissions pour exécuter des requêtes SQL en tant que `sysdba`.
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
git clone https://github.com/Yacine31/db_report
|
|
cd db_report
|
|
# Copier le fichier d'exemple de configuration (optionnel)
|
|
cp .env.local .env
|
|
# Éditer .env si nécessaire (e.g., pour personnaliser OUTPUT_DIR)
|
|
```
|
|
|
|
## Utilisation
|
|
|
|
```bash
|
|
# Exécuter le script principal
|
|
bash rapport_bdd.sh
|
|
```
|
|
|
|
## Sortie
|
|
|
|
Le script génère deux types de rapports dans le répertoire `output/YYYYMMDD/`:
|
|
|
|
1. **Rapport Serveur** : Un rapport unique contenant les informations de configuration du système d'exploitation.
|
|
- Nom du fichier : `Rapport_{hostname}_{timestamp}.html`
|
|
|
|
2. **Rapports Base de Données** : Un rapport détaillé pour chaque instance de base de données Oracle détectée.
|
|
- Nom du fichier : `Rapport_{hostname}_{SID}_{timestamp}.html`
|
|
|
|
Un script de synthèse (`summary.sh`) est également exécuté pour agréger certaines données des différentes bases.
|
|
|
|
## Structure du projet
|
|
|
|
- `rapport_bdd.sh` : Script principal qui orchestre la génération du rapport serveur et des rapports de base de données.
|
|
- `sh/` : Scripts Bash pour la collecte des informations système (utilisés pour le rapport serveur).
|
|
- `sql/` : Requêtes SQL pour les données de base de données.
|
|
- `html/` : Templates HTML pour l'en-tête et le pied de page des rapports.
|
|
- `asm/` : Scripts SQL spécifiques aux instances ASM.
|
|
- `summary/` : Scripts SQL utilisés par le script de synthèse.
|
|
- `summary.sh` : Script d'agrégation des rapports.
|
|
|
|
## Personnalisation
|
|
|
|
- Modifiez `.env` pour changer le répertoire de sortie.
|
|
- Ajoutez des scripts dans `sh/` ou `sql/` pour étendre les rapports.
|
|
|