sql >> Databáze >  >> RDS >> Mysql

mysql Závažná chyba:nelze přidělit paměť pro oblast vyrovnávacích pamětí

TLDR;

Mysql nelze restartovat, protože je nedostatek paměti, zkontrolujte, zda máte nakonfigurovaný vhodný odkládací soubor.

Nepomohlo? Pokud to není váš problém, kvalifikovanější otázky pro pokračování ve výzkumu jsou:

Pozadí

Přesně tento problém jsem měl na úplně prvním systému, který jsem nastavil na EC2, charakterizovaný tím, že web wordpress tam hostovaný občas selhal s "Chybou při navazování databázového připojení".

Protokoly vykazovaly stejnou chybu, jakou zveřejnil OP. Moje čtení chyby (odstraněná časová razítka) je:

  • Chyba nedostatku paměti: InnoDB: Fatal error: cannot allocate memory for the buffer pool
  • InnoDB nelze spustit bez dostatečné paměti [ERROR] Plugin 'InnoDB' init function returned error. [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. [ERROR] Unknown/unsupported storage engine: InnoDB [ERROR] Aborting
  • mysqld se vypíná, což v tomto kontextu skutečně znamená selhání restartu! [Note] /usr/sbin/mysqld: Shutdown complete

Kontrola /var/log/syslog a hledání mysql výnosy:

Out of memory: Kill process 15452 (mysqld) score 93 or sacrifice child
Killed process 15452 (mysqld) total-vm:888672kB, anon-rss:56252kB, file-rss:0kB
init: mysql main process (15452) killed by KILL signal
init: mysql main process ended, respawning
type=1400 audit(1443812767.391:30): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=21984 comm="apparmor_parser"
init: mysql main process (21996) terminated with status 1
init: mysql main process ended, respawning
init: mysql post-start process (21997) terminated with status 1
<repeated>

Poznámka:Možná budete muset gunzip a prohledávat archivované protokoly, pokud k chybě došlo předtím, než byly protokoly otočeny cronem.

Řešení

V mém případě bylo základním problémem to, že jsem opomněl nakonfigurovat odkládací soubor.

Můžete zkontrolovat, zda máte nějaký nakonfigurovaný spuštěním free -m .

total used free shared buffers cached Mem: 604340 587364 16976 0 29260 72280 -/+ buffers/cache: 485824 118516 Swap: 0 0 0

Ve výše uvedeném příkladu Swap:0 označuje žádný swapfile.

Návody k nastavení:

Upozorňujeme, že větší nemusí být nutně lepší! Z průvodce Ubuntu :

Pokud jde o další odpovědi zde...

The InnoDB memory heap is disabled

Díky:Komentář Rubena Schade

[Note] Plugin 'FEDERATED' is disabled.

Viz:https://stackoverflow.com/a/16470822/2586761



  1. Jak mohu vyžadovat pole mysql?

  2. Jsme připraveni na severský PGDay?

  3. Lumen - Vytvořte připojení k databázi za běhu

  4. Prohledávání dat Microsoft Access pomocí Elasticsearch