Avant tout : la seule question qui compte
Ce n'est pas « est-ce que je sauvegarde ? ». C'est « quand ai-je restauré pour la dernière fois ? » . Une sauvegarde jamais restaurée est un fichier dont tu ne sais rien : il peut être vide, tronqué, ou dans un format que plus rien ne relit.
Les données qui comptent Une copie datée Ailleurs que sur le disque Restaurée une fois Les trois premiers points, tout le monde les a. Le quatrième fait la différence.
Sauvegarde ce qui ne se recrée pas : le programme est dans git, il revient, mais tes clients, tes commandes et tes photos ne reviennent pas.
01
Les quatre moments où il faut sauvegarder
Tout le monde pense au premier. Ce sont les trois autres qui sauvent vraiment :
Le moment Pourquoi Qui le déclenche Tous les jours, la nuit Le socle. Une journée perdue au pire Une tâche planifiée Avant chaque mise en ligne C'est le moment où on casse Le script de déploiement Avant tout changement de structure (la forme de la base : ses colonnes, ses tableaux, pas son contenu) Une colonne ajoutée de travers et c'est fini Le programme lui-même Avant toute opération à la main Surtout à 23 h Toi et c'est le plus dur
Sur le serveur de Build, le troisième est automatique et ne dépend de personne. La fonction qui met la base à jour commence par se sauvegarder elle-même , avant de toucher quoi que ce soit. Le déploiement l'appelle à chaque envoi. Exemple Build, rien à coller : c'est le code du serveur de Build, montré pour l'idée.
Ce que tu obtiens
def initialiser():
sauvegarde() # d'abord la copie datée
co = connexion() # ensuite seulement le changement
co.executescript(SCHEMA)
Pas besoin de lire le Python : SCHEMA est le schéma , la description de la structure de la base. La première ligne copie, la dernière change.
C'est la meilleure ligne de ce module. Une sauvegarde qui dépend de ta discipline finit par ne pas se faire. Une sauvegarde posée dans le chemin obligatoire du changement se fait toujours, y compris le jour où tu es pressé.
À écrire dans Claude Code Copier
Avant toute opération qui change la structure de la base, fais une
copie datée. Mets l'appel dans la fonction qui applique les
changements, pas dans le script de déploiement, pour qu'on ne puisse
pas l'oublier.