Administrateur de base de données
Quatre mois, huit sprints et un mentor senior pour apprendre à concevoir, sécuriser, sauvegarder, optimiser et rendre hautement disponibles des bases de production, sur PostgreSQL, Oracle ou SQL Server, avec des cas issus des missions Formuloo.
À la fin du parcours, vous saurez
- Concevoir un schéma relationnel normalisé et le faire évoluer sans perte de données
- Écrire du SQL avancé : requêtes analytiques, procédures, déclencheurs et transactions
- Installer, configurer et superviser un serveur de bases de données
- Mettre en place une politique de sécurité fondée sur les rôles et le moindre privilège
- Organiser sauvegardes, restaurations testées et plan de reprise d'activité
- Diagnostiquer et corriger des problèmes de performance à partir des plans d'exécution
- Mettre en œuvre réplication, haute disponibilité et bases managées dans le cloud
- Préparer et conduire la migration d'une base de production
Le métier
L'administrateur de base de données veille sur l'un des biens les plus précieux d'une organisation : ses données. Il conçoit les schémas avec les développeurs, installe et configure les serveurs, attribue les droits, organise les sauvegardes et teste les restaurations, surveille les performances et prépare la reprise en cas d'incident. Chez les clients de Formuloo, il intervient sur des systèmes de billetterie, des plateformes de commerce, des logiciels de microfinance ou des outils de gestion hospitalière.
Comment se déroule le parcours
Le parcours dure seize semaines, découpées en huit sprints de deux semaines. Vous travaillez sur le système choisi lors de l'entretien de positionnement : PostgreSQL, Oracle ou SQL Server. Les projets sont réalisables sur chacun d'eux ; seuls les outils et les commandes changent.
Du sprint 1 au sprint 7, vous administrez la base de « Sanaga Voyages », une compagnie de transport interurbain par car qui vend ses billets en agence et en ligne. Vous concevez sa base, l'installez, la sécurisez, la sauvegardez, l'optimisez puis la rendez hautement disponible. Le sprint 8 vous confie l'administration et la migration d'une base de production réelle issue d'une mission Formuloo.
L'accompagnement
Un mentor senior, administrateur de bases de données en activité, suit au plus dix apprenants. Vous le retrouvez chaque semaine ; il relit vos scripts, vos procédures et vos rapports, et vous fait travailler les réflexes qui comptent en production : vérifier avant d'agir, tracer chaque opération, tester la restauration. Chaque sprint se termine par une soutenance avec démonstration. Un projet non validé se retravaille avant de passer au suivant.
Les cours libres recommandés donnent les bases ; leur couche renforcée, réservée aux apprenants Schools, ajoute exercices corrigés, cas réels anonymisés et variantes propres à votre système.
À la sortie
La soutenance finale, devant un jury, porte sur la mission réelle et sur votre portfolio de huit projets. Sa réussite donne la certification Formuloo, vérifiable par QR code, et ouvre l'accès à Formuloo Labs et au bassin Talents.
Prérequis
Avoir suivi le parcours découverte DBA ou savoir déjà écrire des requêtes SQL avec jointures et se servir d'un terminal Linux.
Les huit sprints
Deux semaines par sprint. Chaque sprint se conclut par un projet déposé puis soutenu devant votre mentor ; le suivant s'ouvre quand il est validé.
1Modélisation relationnelleLe schéma de la billetterie Sanaga Voyages2 semaines
Passer d'un besoin métier à un schéma relationnel solide : entités, associations, cardinalités, normalisation, clés et contraintes d'intégrité, en documentant chaque choix pour l'équipe de développement.
Sanaga Voyages relie Douala, Yaoundé, Bafoussam et Kribi plusieurs fois par jour. Sa billetterie actuelle est un tableur partagé entre les agences, avec des doublons et des places vendues deux fois. La compagnie sera votre cliente jusqu'au sprint 7. À partir des entretiens fournis, vous concevez la base de données de la nouvelle billetterie : lignes, arrêts, horaires, cars et leurs plans de sièges, voyages, réservations, billets, paiements, agences et guichetiers. Vous partez d'un modèle conceptuel, vous le normalisez, puis vous le traduisez en un schéma physique avec clés primaires et étrangères, contraintes d'unicité et de vérification. Une contrainte doit rendre impossible la vente d'un même siège deux fois sur un voyage. Vous livrez le script de création, un jeu de données réaliste et un dictionnaire de données.
- Modèle conceptuel et schéma physique illustrés et justifiés
- Script de création du schéma et jeu de données de démonstration
- Dictionnaire de données décrivant chaque table et chaque contrainte
2SQL avancéReporting et règles de gestion de Sanaga Voyages2 semaines
Maîtriser le SQL dont un administrateur a besoin au quotidien : sous-requêtes, expressions de table communes, fonctions de fenêtrage, vues, procédures stockées, déclencheurs et transactions avec leurs niveaux d'isolation.
La direction de Sanaga Voyages veut piloter son activité et ses guichetiers se plaignent d'erreurs de saisie. Vous intervenez sur les deux fronts. Côté pilotage, vous écrivez les requêtes d'un tableau de bord : taux de remplissage par ligne et par jour, chiffre d'affaires par agence avec comparaison au mois précédent, classement des guichetiers, heures de pointe. Vous utilisez les expressions de table communes et les fonctions de fenêtrage, et vous exposez les résultats dans des vues. Côté gestion, vous écrivez une procédure de réservation qui vérifie la disponibilité du siège et enregistre billet et paiement dans une seule transaction, ainsi qu'un déclencheur qui trace toute annulation. En soutenance, le mentor lancera deux réservations simultanées du même siège pour vérifier votre gestion de la concurrence.
- Requêtes et vues du tableau de bord de la direction
- Procédure de réservation transactionnelle et déclencheur de traçabilité
- Démonstration de deux réservations concurrentes sur le même siège
3Installation et configuration du SGBDLe serveur de production de Sanaga Voyages2 semaines
Installer le système de gestion de bases de données choisi sur un serveur Linux ou Windows, en comprendre l'architecture, régler ses paramètres essentiels et mettre en place une supervision de base.
La billetterie va passer en production. Sanaga Voyages a loué une machine virtuelle et vous demande d'y installer proprement le serveur de bases de données. Vous installez le système choisi à partir des paquets officiels, en séparant fichiers de données, journaux de transactions et sauvegardes. Vous réglez les paramètres essentiels en fonction de la mémoire et des processeurs disponibles (mémoire partagée, connexions, journalisation) et vous justifiez chaque valeur. Vous configurez l'accès réseau pour que seuls les serveurs applicatifs puissent se connecter. Vous déployez le schéma du sprint 1 et mettez en place une supervision minimale : espace disque, connexions actives, requêtes longues, erreurs dans les journaux. Vous rédigez une procédure d'installation assez précise pour qu'un collègue reproduise le serveur à l'identique.
- Serveur installé et configuré, avec le schéma Sanaga Voyages déployé
- Fichier de configuration commenté et justification des paramètres
- Procédure d'installation reproductible et tableau de supervision minimal
4Sécurité, rôles et droitsVerrouiller la base de Sanaga Voyages2 semaines
Protéger la base : modèle de rôles fondé sur le moindre privilège, séparation des comptes applicatifs et humains, chiffrement des connexions et des données sensibles, audit des accès et conformité aux règles de protection des données.
Un audit interne a révélé que l'application, les guichetiers et le comptable utilisent tous le même compte administrateur. Les numéros de téléphone et les pièces d'identité des voyageurs sont lisibles par tous. Vous concevez un modèle de rôles : compte de l'application avec les seuls droits nécessaires, rôle de lecture pour le reporting, rôle de comptabilité limité aux paiements, comptes nominatifs pour les administrateurs. Vous retirez les droits superflus, activez le chiffrement des connexions et protégez les données personnelles sensibles (chiffrement ou masquage selon le système). Vous mettez en place l'audit des connexions et des opérations sensibles, et vous définissez une politique de rotation des mots de passe des comptes techniques. Votre matrice des droits doit permettre de répondre en une minute à la question « qui peut lire les pièces d'identité ? ».
- Scripts de création des rôles et d'attribution des droits
- Matrice des droits par rôle et par objet
- Configuration de l'audit et démonstration d'un accès refusé tracé
5Sauvegarde, restauration et PRALe plan de reprise de Sanaga Voyages2 semaines
Garantir que les données survivent à toute panne : politique de sauvegarde alignée sur les objectifs de perte et de durée d'interruption, restauration à un instant précis, tests réguliers et plan de reprise d'activité documenté.
Une agence voisine a perdu trois jours de ventes après une panne de disque : ses sauvegardes n'avaient jamais été testées. La direction de Sanaga Voyages vous demande de garantir qu'au pire, elle ne perdra que quelques minutes de réservations. Avec la direction, vous fixez la perte de données maximale acceptable et la durée d'interruption tolérable. Vous en déduisez une politique : sauvegardes complètes, archivage continu des journaux de transactions, rétention, copie hors site chiffrée. Vous automatisez le tout et vous ajoutez une alerte en cas d'échec. Vous réalisez ensuite trois exercices chronométrés : restauration complète sur un serveur vierge, restauration à l'instant précédant une suppression accidentelle, reprise après perte du serveur. Le plan de reprise doit pouvoir être suivi par une personne d'astreinte à trois heures du matin.
- Politique de sauvegarde avec objectifs de perte et d'interruption justifiés
- Scripts de sauvegarde automatisés avec alerte en cas d'échec
- Plan de reprise d'activité et comptes rendus des trois exercices chronométrés
6Performance : index, plans d'exécution et tuningLa billetterie Sanaga Voyages face aux départs de fin d'année2 semaines
Diagnostiquer et résoudre des problèmes de performance : repérer les requêtes coûteuses, lire un plan d'exécution, choisir les bons index, maintenir les statistiques et régler le serveur sous une charge réaliste.
Chaque année, la semaine précédant les fêtes, les ventes sont multipliées par dix et la billetterie devient très lente. Vous disposez d'un jeu de données de trois ans d'historique et d'un scénario de charge qui simule ces pics. Vous lancez la charge, puis vous identifiez les requêtes les plus coûteuses grâce aux outils de votre système. Pour chacune, vous lisez le plan d'exécution, vous expliquez le problème (parcours complet de table, mauvaise estimation, verrou) et vous proposez une correction : index adapté, réécriture de la requête, mise à jour des statistiques, partitionnement de l'historique. Vous vérifiez aussi l'effet de vos index sur les écritures. Vous terminez par un réglage du serveur et une seconde mesure. Le rapport compare les temps de réponse avant et après sous la même charge.
- Analyse des requêtes coûteuses avec plans d'exécution commentés
- Scripts des optimisations appliquées (index, réécritures, partitionnement)
- Rapport comparant les mesures avant et après sous la même charge
7Réplication, haute disponibilité et base managéeSanaga Voyages ne s'arrête plus2 semaines
Rendre la base résistante aux pannes et comparer les options : réplication, bascule automatique ou manuelle, réplicas en lecture, base managée chez un fournisseur cloud, et premières notions de NoSQL pour savoir quand y recourir.
Sanaga Voyages ouvre la vente en ligne la nuit et ne peut plus se permettre d'arrêt. Elle hésite entre garder ses serveurs et passer à une base managée chez un fournisseur cloud. Vous mettez en place une réplication entre un serveur principal et un serveur secondaire, avec un réplica en lecture pour le reporting. Vous simulez la panne du serveur principal, vous effectuez la bascule et vous mesurez la durée d'interruption et les données éventuellement perdues. Vous déployez ensuite la même base sur un service managé (RDS ou son équivalent pour votre système) et vous comparez les deux options : coût, effort d'exploitation, sauvegardes, contrôle. Pour finir, vous indiquez si une base NoSQL serait utile pour un besoin précis de la compagnie, comme le suivi des cars en temps réel. Votre note de recommandation s'adresse à la direction, pas aux techniciens.
- Réplication opérationnelle et compte rendu d'une bascule chronométrée
- Base déployée sur un service managé avec sa configuration
- Note de recommandation comparant les options, NoSQL compris
8Administration et migration d'une base de production réelleMission client Formuloo2 semaines
Prendre en charge une base de production réelle issue d'une mission Formuloo : audit, plan de migration, exécution en limitant l'interruption, vérification des données, puis soutenance finale devant un jury.
Ce dernier sprint vous confie une base de production réelle issue d'une mission Formuloo, par exemple celle d'une PME, d'une ONG ou d'une plateforme de commerce en ligne, à faire migrer vers une nouvelle version du système, un nouveau serveur ou une base managée. Les données personnelles sont anonymisées avant de vous être remises. Vous commencez par un audit : schéma, volumétrie, droits, sauvegardes, requêtes lentes, risques. Vous rédigez un plan de migration avec ses étapes, sa répétition à blanc, sa durée d'interruption prévue, ses contrôles de cohérence et son plan de retour arrière. Vous exécutez la migration en conditions réelles, puis vous vérifiez les données et les performances. Le mentor joue le référent technique et un membre de l'équipe Formuloo le client. La soutenance finale, devant un jury, porte sur cette mission et sur votre portfolio des huit sprints.
- Rapport d'audit de la base et plan de migration avec retour arrière
- Compte rendu de la migration et des contrôles de cohérence réalisés
- Support de soutenance finale présentant la mission et le portfolio des huit sprints