Heim > Datenbank > MySQL-Tutorial > Hauptteil

Warum bricht mein MySQL auf der Amazon EC2-Mikroinstanz den Start mit Fehler 12 (nicht genügend Speicher) ab?

Patricia Arquette
Freigeben: 2024-11-26 18:57:09
Original
444 Leute haben es durchsucht

Why Does My MySQL on Amazon EC2 Micro Instance Abort Startup with Error 12 (Insufficient Memory)?

Amazon EC2, MySQL bricht den Start aufgrund von unzureichendem Speicher ab (Fehler Nr. 12)

Wenn Sie MySQL auf einer Amazon EC2-Mikroinstanz ausführen, kann es sein, dass Sie Es kommt der Fehler „InnoDB: mmap (x Bytes) fehlgeschlagen; Fehlernummer 12.“ Dieser Fehler weist darauf hin, dass InnoDB, die von MySQL verwendete Speicher-Engine, aufgrund unzureichenden Systemspeichers nicht in der Lage ist, den erforderlichen Speicher für den Pufferpool zuzuweisen.

Um dieses Problem zu beheben, können Sie die folgenden Schritte ausführen:

  1. Auslagerungsbereich hinzufügen: Mikroinstanzen verfügen standardmäßig nicht über einen dedizierten Auslagerungsbereich, was durch die Erstellung einer Auslagerungsdatei behoben werden kann. Führen Sie die folgenden Befehle aus:

    • dd if=/dev/zero of=/swapfile bs=1M count=1024
    • mkswap /swapfile
    • swapon /swapfile
  2. Pufferpoolgröße erhöhen: Um mehr Speicher für den Pufferpool zuzuweisen, erhöhen Sie den Parameter innodb_buffer_pool_size in Ihrer MySQL-Konfigurationsdatei (my.cnf). Stellen Sie sicher, dass der Wert innerhalb des verfügbaren Speicherbereichs liegt.
  3. RDS-Dienst verwenden: Erwägen Sie für geschäftskritische Anwendungen die Verwendung von Amazon Relational Database Service (RDS), einem verwalteten Datenbankdienst, der den Speicher verwaltet Zuordnung und Skalierung automatisch.

Beispielkonfiguration

Die Im Folgenden finden Sie ein Beispiel für eine my.cnf-Konfiguration mit erhöhter Pufferpoolgröße und Swap-Speicherplatz:

[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
Nach dem Login kopieren

Hinweis: Der spezifische Wert für innodb_buffer_pool_size sollte basierend auf den Speicheranforderungen Ihrer Anwendung angepasst werden. Es sollte den verfügbaren Systemspeicher nicht überschreiten.

Das obige ist der detaillierte Inhalt vonWarum bricht mein MySQL auf der Amazon EC2-Mikroinstanz den Start mit Fehler 12 (nicht genügend Speicher) ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage