cynod:config_avancee:restaurationdonnees

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cynod:config_avancee:restaurationdonnees [2024/04/28 12:15]
yannick.bribaud
cynod:config_avancee:restaurationdonnees [2024/08/13 11:52] (Version actuelle)
sokhnamariama.sene
Ligne 3: Ligne 3:
  
  
-  * Prérequis +  ​* **Prérequis** 
-     - Disposer de la sauvegarde et de la base de données anonymisées de la production du client en question ​en **<color #​ed1c24>​local</​color>​** ​(Par local nous voulons dire avoir les fichiers SQL des 2 bases de données et être en mesure de les restaurer sur votre serveur local de base de données).+     - Disposer ​en <color #​ed1c24>​**local**</​color> ​de la sauvegarde et de la base de données anonymisées de la production du client en question (Par local nous voulons dire avoir les fichiers SQL des 2 bases de données et être en mesure de les restaurer sur votre serveur local de base de données).
      - Se servir d'un outil d'​administration de base données déjà installé. Exemple: Workbench ou dbeaver.      - Se servir d'un outil d'​administration de base données déjà installé. Exemple: Workbench ou dbeaver.
  
  
-  - Etapes :+==== Les étapes ====
   *  Créer deux (2) bases de données l'une contiendra les données de la sauvegarde et l'​autre les données anonymisées de la production. ​ <WRAP left round box 70%> Requêtes à exécuter pour créer les différentes bases de données:   *  Créer deux (2) bases de données l'une contiendra les données de la sauvegarde et l'​autre les données anonymisées de la production. ​ <WRAP left round box 70%> Requêtes à exécuter pour créer les différentes bases de données:
       * **CREATE DATABASE** cynod_nom_client_periode_sauvegarde;​       * **CREATE DATABASE** cynod_nom_client_periode_sauvegarde;​
Ligne 17: Ligne 17:
 === Procédure de restauration de données de la sauvegarde. === === Procédure de restauration de données de la sauvegarde. ===
   * **USE** <color #​ed1c24>​cynod_nom_client_periode_sauvegarde</​color>;​   * **USE** <color #​ed1c24>​cynod_nom_client_periode_sauvegarde</​color>;​
-Modifier la taille du paquet de communication entre client et serveur ​mysql afin d'​empêcher MYSQL de générer des erreurs lors de la restauration des données. convertir la taille des données en Megaoctets puis :+Modifier la taille du paquet de communication entre le client et le serveur afin d'​empêcher MYSQL de générer des erreurs lors de la restauration des données. convertir la taille des données en Megaoctets puis :
  
 ''​max_taille_paquet = taille_données_à_restaurer_en_Mo × 1024 × 1024 + 500 × 1024 ×1024''​ 500Mo pour avoir une marge de sécurité dans le transfert de grosses quantités de données. ''​max_taille_paquet = taille_données_à_restaurer_en_Mo × 1024 × 1024 + 500 × 1024 ×1024''​ 500Mo pour avoir une marge de sécurité dans le transfert de grosses quantités de données.
Ligne 27: Ligne 27:
 === Procédure de restauration de données de la production. === === Procédure de restauration de données de la production. ===
   * **USE** <color #​ed1c24>​cynod_nom_client_prod</​color>;​   * **USE** <color #​ed1c24>​cynod_nom_client_prod</​color>;​
-Modifier la taille du paquet de communication entre client et serveur ​mysql afin d'​empêcher MYSQL de générer des erreurs lors de la restauration des données. convertir la taille des données en Megaoctets puis :+Modifier la taille du paquet de communication entre le client et le serveur afin d'​empêcher MYSQL de générer des erreurs lors de la restauration des données. convertir la taille des données en Megaoctets puis :
  
 ''​max_taille_paquet = taille_données_à_restaurer_en_Mo × 1024 × 1024 + 500 × 1024 ×1024''​ 500Mo pour avoir une marge de sécurité dans le transfert de grosses quantités de données. ''​max_taille_paquet = taille_données_à_restaurer_en_Mo × 1024 × 1024 + 500 × 1024 ×1024''​ 500Mo pour avoir une marge de sécurité dans le transfert de grosses quantités de données.
Ligne 34: Ligne 34:
 </​WRAP>​ </​WRAP>​
  
-  * Effectuer une requête croisée entre la base de données de sauvegarde et la base de données de production <WRAP left round box 60%> +  * Effectuer une requête croisée entre la base de données de **sauvegarde** et la base de données de **production** <WRAP left round box 60%> 
-**SELECT** * **FROM** cynod_nom_client_periode_sauvegarde.nom_table nt **WHERE** nt.champ not in ( **SELECT** champ **FROM** cynod_nom_client_prod.nom_table);​+**SELECT** * **FROM** cynod_nom_client_periode_sauvegarde.nom_table nt **WHERE** nt.champ ​**not in** ( **SELECT** champ **FROM** cynod_nom_client_prod.nom_table);​
 </​WRAP>​ </​WRAP>​
  
-  *  Créer une table temporair ​pour stocker le résultat de la requête si le résultat il y a. <WRAP left round box 70%> +  *  Créer une table temporaire ​pour stocker le résultat de la requête ​**si résultat il y a**. <WRAP left round box 70%> ​
-utiliser l'​outil d'​administration de base de données de préférence pour exécuter cette requête:  +
 **CREATE TABLE** temp_nom_table_periode **like** nom_table; **CREATE TABLE** temp_nom_table_periode **like** nom_table;
 </​WRAP>​ </​WRAP>​
  
-  * Insérer les données manquantes dans la table temporaire ​  <​WRAP left round box 75%> +  * Insérer les données manquantes dans la **table temporaire**   <WRAP left round box 75%> 
-**INSERT  ​into** temp_nom_table_periode **SELECT** * **FROM** cynod_nom_client_periode_sauvegarde.nom_table nt **WHERE** nt.champ not in ( **SELECT** champ **FROM** cynod_nom_client_prod.nom_table);​+**INSERT  ​INTO** temp_nom_table_periode **SELECT** * **FROM** cynod_nom_client_periode_sauvegarde.nom_table nt **WHERE** nt.champ not in ( **SELECT** champ **FROM** cynod_nom_client_prod.nom_table);​
 </​WRAP>​ </​WRAP>​
 +
 +  * Faire un **dump** de la table temporaire <WRAP left round box 85%>
 +**mysqldump -u** nom_user_db **-p** nom_base_données nom_table_temporaire_a_dumper **>** chemin_dossier_stockage_du_dump/​nom_du_dump.sql
 +</​WRAP>​
 +
 +  * Fournir le **dump** de la table à l'​équipe **INFRA** accompagné de la **requête d'​insertion** dans la table où l'on doit restaurer les données extraites de la sauvegarde.<​WRAP left round box 100%>
 +  * Requête de vérification des données au niveau de la base de données en production pour s'​assurer que les données contenues dans la table temporaire n'y sont pas déjà.
 +       ​***SELECT * FROM** table_a_restaurer nt **WHERE** nt.champ in (**SELECT** champ **FROM** table_temporaire);​
 +  * Insertion dans la table sans prendre en compte la colonne ID des données.
 +       ​***INSERT INTO** nom_table (liste_colonnes_sans_la_colone_ID) **SELECT** liste_des_colonnes_sans_la_colone_ID **FROM** nom_table_temporaire;​
 +</​WRAP>​
 +
 +
  
  
  • cynod/config_avancee/restaurationdonnees.1714306539.txt.gz
  • Dernière modification: 2024/04/28 12:15
  • par yannick.bribaud