Mon serveur MySQL compte actuellement 235 bases de données. Devrais-je m'inquiéter? Ils ont tous la même structure avec des tables myisam. P>
Le matériel est une machine virtuelle avec 2 Go de RAM en cours d'exécution sur un OPTERON AMD de quad-core 2.2GHz. P>
Récemment, cpanel m'a envoyé un email disant que MySQL a échoué et un redémarrage a été effectué. P>
Les nouvelles bases de données sont censées être créées et je me demande si je devrais ajouter plus de mémoire ou si je devais simplement ajouter une autre machine virtuelle. P>
4 Réponses :
Je ne crois pas qu'il existe une limite difficile, la seule chose qui vous limite vraiment que votre matériel et votre trafic ces bases de données deviendront. P>
Vous semblez avoir très peu de mémoire, ce qui signifie probablement que vous n'avez pas beaucoup de connexions ... P>
Vous devez commencer par une utilisation en profilage pour chaque base de données (ou ensemble de bases de données, en fonction de la manière dont ils sont utilisés bien sûr). P>
Ma suggestion - MySQL (ou tout serveur de base de données pour cette matière) pourrait utiliser plus de mémoire. Vous ne pouvez jamais en avoir assez. P>
Vous le faites mal. P>
Commentaire avec des spécificités concernant vos bases de données et nous pouvons probablement vous remplir sur l'endroit où votre conception s'est trompé. P>
Merci à tous pour vos commentaires. Le système est quelque chose de similaire avec Google Analytics. Les visites du site internet des utilisateurs sont connectées à une table "maître". Une application native surveille la table principale et traite les visites enregistrées et les écrit à la base de données des utilisateurs. Chaque utilisateur a sa propre dB. Cela a été décidé pour le frisson. Divers rapports et statistiques sont exécutés pour chaque utilisateur. Et il est plus rapide si cela ne fonctionne que sur une DB spécifique (moins de données), je sais que ce n'est pas la meilleure configuration. Mais nous devons y faire face pendant un moment.
Les "bases de données" dans MySQL sont vraiment des catalogues, ne sont pas d'effet sur ses limites, que vous mettiez toutes les tables dans une ou chacune. P>
Le problème principal est le cache de table. Sans le régler, vous allez avoir le cache de table par défaut (= 64 typiquement), ce qui signifie que vous fermerez une table à chaque fois que vous ouvrez un. Ceci est incroyablement mauvais. P>
sauf dans Myisam, c'est encore pire, car la fermeture d'une table jette ses blocs de clé hors du cache de clé, ce qui signifie que des recherches ou des analyses d'index ultérieurs permettront de lire des blocs réels du disque, qui est horrible et lent et a vraiment besoin d'être évité. p>
Mon conseil est: p>
J'ajouterais également, cochez la limite de descripteur de fichier - sans directement connecté au non. des bases de données, vous pouvez utiliser des descripteurs de fichiers avec de nombreux tables de myisam.
Le script de démarrage normal augmentera le nombre (sous Linux) si nécessaire - il est certainement possible d'avoir 10 000 sans problème. Les autres moteurs peuvent également utiliser un descripteur de fichier par table.
(republier mon commentaire pour une meilleure visibilité) Merci à tous pour vos commentaires. Le système est quelque chose de similaire avec Google Analytics. Les visites du site internet des utilisateurs sont connectées à une table "maître". Une application native surveille la table principale et traite les visites enregistrées et les écrit à la base de données des utilisateurs. Chaque utilisateur a sa propre dB. Cela a été décidé pour le frisson. Divers rapports et statistiques sont exécutés pour chaque utilisateur. Et il est plus rapide si cela ne fonctionne que sur une DB spécifique (moins de données), je sais que ce n'est pas la meilleure configuration. Mais nous devons y faire face pendant un moment. P>
Cette information semble pertinente à la question initiale. Si vous souhaitez que cela ait une plus grande visibilité qu'un commentaire, pourquoi ne pas modifier la question initiale pour inclure ces informations?
Bien que je n'ai jamais entendu parler d'une limite, je pourrais inspecter votre structure - sont-ils vraiment nécessaires?