Mysql
 sql >> Base de données >  >> RDS >> Mysql

File d'attente d'instructions d'insertion MySQL

Vous voulez Gearman - il mettra les requêtes en file d'attente et les insèrera au fur et à mesure que la base de données sera prête pour elles, afin de ne pas surcharger votre serveur de base de données.

Il y a un article récent (et de qualité) sur l'utilisation des bases de données pour la journalisation ici , qui (résumé) dit :

  • Utiliser MyISAM avec des insertions simultanées
  • Faites pivoter les tables quotidiennement et utilisez UNION pour interroger
  • Utilisez des insertions différées avec MySQL ou un agent de traitement des tâches comme Gearman (bien que MySQL ait une limite sur le nombre de celles-ci, il les mettra en file d'attente avant de les supprimer silencieusement !)

HighScalability écrire sur Gearman .

Si vous voulez vraiment éviter cela, vous pouvez écrire les instructions SQL brutes dans un fichier et les traiter avec ce cronjob :

mysql loggingDB logTable < fullLog.sql && > fullLog.sql