J'ai un serveur de développement MySQL (InnoDB uniquement) avec plusieurs utilisateurs. Chaque utilisateur a accès à un schéma exclusif. Comment est-ce que je peux limiter la taille de schéma de sorte que chaque utilisateur puisse employer seulement 1GB (par exemple)? MySQL lui-même n'offre pas de système de quotas.Taille du schéma MySQL
Répondre
L'utilisation de la méthode suggérée par James McNellis fonctionnerait probablement, mais si InnoDB atteignait une limite de quota stricte, cela ne profiterait certainement pas à la stabilité; tous les fichiers de données sont toujours connectés via l'espace table système qui ne peut pas être supprimé.
Malheureusement, je ne vois pas de moyen pratique de réaliser ce que vous voulez. Si vous craignez que l'utilisation de l'espace disque dépasse les limites prédéfinies et que vous ne souhaitiez pas respecter les quotas externes, je suggère de conserver les paramètres d'espace table combinés (par exemple innodb_file_per_table
) et de supprimer le :autoextend
de la configuration. De cette façon, vous n'obtiendrez toujours pas de limites spécifiques à l'utilisateur ou au schéma, mais vous éviterez au moins que le disque ne soit rempli de données, car l'espace table ne dépassera pas sa taille initiale dans cette configuration. Avec innodb_file_per_table
il n'y a malheureusement aucun moyen de configurer chacun d'eux pour s'arrêter à une certaine taille maximale.
Ceci est l'un des aspects que MySQL diffère des autres, soi-disant plus de bases de données au niveau de l'entreprise. Cependant, ne vous méprenez pas, nous utilisons InnoDB avec beaucoup de données dans plusieurs milliers d'installations, il s'est donc avéré être prêt pour la production. Seules les fonctionnalités de gestion font parfois défaut.
- 1. Constructeur de base de données du schéma MySQL
- 2. Taille du fichier binaire
- 3. Comment changer la taille du cache bdb dans mysql?
- 4. Validation du schéma xsd
- 5. Utilisation efficace du schéma
- 6. génération de schéma MySql avec NHibernate
- 7. Outil ERD qui génère le schéma MySQL
- 8. Validation complète du schéma XML
- 9. Taille du type générique
- 10. Taille du cache .net
- 11. Limiter la taille d'une table mysql
- 12. MySQL: Les informations de procédure stockées peuvent-elles être extraites du schéma d'informations?
- 13. Lors de la définition du schéma MySQL, pourquoi utiliser certains types?
- 14. Syntaxe MySQL à la syncronisation de schéma via des triggers?
- 15. différence de taille entre la taille du dossier du Finder et du gestionnaire de fichiers Carbon
- 16. WCF taille du message max
- 17. Taille du processus sous UNIX
- 18. Taille du panneau de dessin
- 19. Winforms RichTextBox Taille du texte?
- 20. nhibernate alterne taille du lot
- 21. Augmenter animée taille du contenu
- 22. Pourquoi la taille du fichier MYD est-elle si élevée?
- 23. espace de noms cible du schéma
- 24. Fluent NHibernate - construction automatique du schéma
- 25. Validation Xml à l'aide du schéma XSD
- 26. Outil de validation du schéma XML XSD
- 27. Mise en page du schéma d'interface utilisateur
- 28. XmlReader obtenir l'élément par défaut du schéma
- 29. Schéma d'utilisation du pool de threads Tomcat
- 30. Obtention du schéma pour une table
C'est un bon point que MySQL n'aimerait probablement pas manquer d'espace disque. Le fichier innodb_file_per_table peut être utilisé pour aider à maintenir les limites logicielles, car vous savez à peu près combien d'espace disque chaque base de données utilise. –
Innodb devrait tolérer la sortie de l'espace disque assez bien. MyISAM ne le fait pas; il bloque le processus pour toujours (c'est parce qu'il n'a pas de transactions donc il ne peut pas annuler tout travail qu'il a déjà fait). Veuillez tester ce qui se passe lorsque InnoDB est à court d'espace disque. Vous avez besoin d'innodb_file_per_table. – MarkR
Notez également que vous ne pouvez pas empêcher les utilisateurs de créer des tables MyISAM très facilement - le moteur est intégré dans mysql et non amovible. Les tables temporaires, etc. peuvent également l'utiliser. Et les tables temporaires Innodb vont toujours dans le grand fichier "ibdata1" lorsque file_per_table est activé. – MarkR