DELETE puis recopie complète depuis dev préprod.
Client prod : lecture seule (aucun bouton Sync).
Client préprod : confirmation avec le nom exact de la base.
Structures non alignées : corriger via Navicat avant toute sync.
Source de vérité : dev préprod ().
Comparaison vers dev prod, client préprod et client prod (lecture seule pour prod).
Compteur : cible · source (lignes dans l'environnement comparé · lignes en dev préprod). Les écarts détaillent combien de clés manquent, sont en trop ou diffèrent — indépendamment du total.
| Table | Source |
$tabEnv) {
if (!empty($tabEnv['is_source'])) {
continue;
} ?>
|
|---|---|---|
|
ligne(s) | $tabEnv) { if (!empty($tabEnv['is_source'])) { continue; } $tabCmp = isset($tabRow['envs'][$strEnvId]) ? $tabRow['envs'][$strEnvId] : null; if (!$tabCmp) { continue; } $strClass = fxStaticSyncStatusClass($tabCmp['status']); $strLabel = fxStaticSyncStatusLabel($tabCmp['status'], $tabCmp); $strDbName = $tabEnv['config']['db'] ?? ''; ?>
Cible · Source
isset($tabCmp['schema_missing_cols']) ? $tabCmp['schema_missing_cols'] : array(),
'extra_in_target' => isset($tabCmp['schema_extra_cols']) ? $tabCmp['schema_extra_cols'] : array(),
);
$strSchemaDiff = fxStaticSyncFormatSchemaDiff($tabSchemaDiff);
if ($strSchemaDiff !== '') { ?>
Détails
Lecture seule
|
Manquantes : —
Différences : —
En trop :
isset($tabCmp['schema_missing_cols']) ? $tabCmp['schema_missing_cols'] : array(),
'extra_in_target' => isset($tabCmp['schema_extra_cols']) ? $tabCmp['schema_extra_cols'] : array(),
);
$strSchemaDiff = fxStaticSyncFormatSchemaDiff($tabSchemaDiff);
if ($strSchemaDiff !== '') { ?>
Fermer
Aucun écart à afficher.