Amazon EC2, MySQL abandonne le démarrage en raison d'une mémoire insuffisante (erreur 12)
Lors de l'exécution de MySQL sur une micro-instance Amazon EC2, vous pouvez rencontrez l'erreur "InnoDB : mmap (x octets) a échoué ; errno 12." Cette erreur indique qu'InnoDB, le moteur de stockage utilisé par MySQL, n'est pas en mesure d'allouer la mémoire nécessaire au pool de mémoire tampon en raison d'une mémoire système insuffisante.
Pour résoudre ce problème, vous pouvez suivre ces étapes :
Ajouter un espace d'échange : Les micro-instances n'ont pas d'espace d'échange dédié par défaut, ce qui peut être surmonté en créant un fichier d'échange. Exécutez les commandes suivantes :
Exemple de configuration
Ce qui suit est un exemple de configuration my.cnf avec une taille de pool de mémoire tampon et un espace d'échange accrus :
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links=0 innodb_buffer_pool_size=1G [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
Remarque : la valeur spécifique de innodb_buffer_pool_size doit être ajustée en fonction des besoins en mémoire de votre application. Il ne doit pas dépasser la mémoire système disponible.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!