2010-09-14 10 views
0

I ont une base de données de lots que je voudrais répliquer à une base de données de rapports, mais les requêtes exécutées sur la base de données de rapports peut être très longue (temps d'exécution sage) au point où ils peuvent causer blocage (cela se produit maintenant parce que les applications batch et de reporting utilisent la même DB), j'ai pensé à changer les moteurs de la table dans la base de données de reporting (une fois répliqués du batch) vers mysiam et ensuite répliquer avec insert retardé et donc simulant en quelque sorte un mécanisme de "persister finalement" dans mysql et par conséquent donner la priorité aux lectures de rapports (ils font allouer des créations de table temporaire). peut-il être effectué sur le client de réplication uniquement (c'est-à-dire: ne pas toucher les requêtes principales, le batch n'insère pas avec insert retardé)? et est-ce une bonne solution? grâceréplication MySQL: en utilisant insertion retardée

+0

Êtes-vous actuellement en train de répliquer de la base de données 'batch' vers la base de données 'reporting'? –

Répondre

0

Vous pouvez simplement ignorer toutes les requêtes de blocage sur votre esclave. Les seules requêtes qui affecteraient votre réplication sont les requêtes d'insertion/mise à jour. Une requête SELECT de longue durée n'affiche que des ressources.