Question

J'ai une configuration de cluster de MySQL, il y a 2 noeuds de données et 1 nœud de gestion. Nous sommes maintenant des erreurs sur nos noeuds de données lors des insertions.

  

ERREUR 1114 (HY000): Le tableau 'utilisateurs' est plein

S'il vous plaît toute aide est appréciée, Est-ce un problème de configuration, si oui quel nœud? chaque noeud est un serveur Ubuntu 9.

Était-ce utile?

La solution

La réponse est ici: http: / /dev.mysql.com/doc/refman/5.0/en/faqs-mysql-cluster.html#qandaitem-B-10-1-13

En bref: moteur NDB détient toutes les données dans la RAM. Si vos noeuds ont 1 Go de RAM et que vous essayez de charger une base de données de 4 Go vous êtes (presque) hors de la chance.

Il y a un moyen de configurer NDB pour utiliser le disque pour stocker des données de telle sorte que la RAM est utilisé uniquement pour les indices de magasin (ils doivent encore être stockés dans la mémoire vive), voici comment: http://dev.mysql.com /doc/refman/5.1/en/mysql-cluster-disk-data-objects.html

Si vous faites cela, cependant, vous obtiendrez des performances beaucoup plus faibles.

Autres conseils

Juste au cas où quelqu'un passe par ce problème, la cause principale de ce problème est la valeur MaxNoOfConcurrentOperations, qui devrait être soulevée en conséquence conjointement au nombre de lignes de la table devrait tenir.

Les points suivants doivent être des solutions pour ce problème.

  1. Modifier l'instruction CREATE TABLE de la table création initiale d'inclure la valeur MAX_ROWS être le double du nombre de lignes de cette table devrait tenir.

  2. Augmenter la valeur de MaxNoOfConcurrentOperations et MaxNoOfConcurrentTransactions à une valeur supérieure à la plus grande table du cluster. Ceci est probablement parce que MySQL fonctionne cluster sur toutes les lignes en parallèle lors de l'application toute opération sur une grande table.

Vérifier le réglage de innodb_data_file_path - cette erreur suggère que vous avez dépassé l'espace disponible défini dans cette clé. Consultez ce lien pour redéfinir l'espace pour InnoDB.

Sinon, vous pouvez tout simplement à court d'espace disque sur la partition que les données sont stockées sur.

Je fait face à la même erreur quand je chargeais la structure que les tables DB. Quels sont les moyens DataMemory ou IndexMemory ne sont pas d'aide ici. De plus, le nombre de tables n'a pas atteint la limite dans MaxNoOfTables il est donc pas la question aussi bien. La solution pour moi ici était d'augmenter les valeurs de MaxNoOfOrderedIndexes et MaxNoOfUniqueHashIndexes qui reflètent le nombre maximum d'indices que vous pouvez avoir dans le cluster. Donc, s'il y a beaucoup d'index dans votre base de données essayer d'augmenter ces variables en conséquence. Bien sûr, un doit se faire [redémarrage progressif] [1] après que le changement prenne effet!

J'espère que cette personne pourrait d'aide!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top