Memperbaiki “InnoDB: Fatal error: cannot allocate memory for the buffer pool”

database_errorMemory pada server memang merupakan hal yang pokok selain storage dan procesor. Nah, masalah ini muncul ketika menggunakan VPS di Digital Ocean pada awal penggunaan memang terlihat lancar namun setelah beberapa bulan seiring dengan penambahan database dan aksesnya akhirnya muncul masalah “InnoDB: Fatal error: cannot allocate memory for the buffer pool”.

Jika dilihat pada /var/log/syslog maka akan ditemui beberapa baris error seperti dibawah ini, yang menunjukkan mysql telah dimatikan karena krisis memory.

Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [Note] Plugin ‘FEDERATED’ is disabled.
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: The InnoDB memory heap is disabled
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Mutexes and rw_locks use GCC atomic builtins
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Compressed tables use zlib 1.2.7
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Using Linux native AIO
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Initializing buffer pool, size = 128.0M
Sep 11 17:00:02 localhost mysqld: InnoDB: mmap(135987200 bytes) failed; errno 12
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Completed initialization of buffer pool
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 InnoDB: Fatal error: cannot allocate memory for the buffer pool
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [ERROR] Plugin ‘InnoDB’ init function returned error.
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed.
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [ERROR] Unknown/unsupported storage engine: InnoDB
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [ERROR] Aborting
Sep 11 17:00:02 localhost mysqld:
Sep 11 17:00:02 localhost mysqld: 140911 17:00:02 [Note] /usr/sbin/mysqld: Shutdown complete
Sep 11 17:00:02 localhost mysqld:
Sep 11 17:00:02 localhost mysqld_safe: mysqld from pid file /var/run/mysqld/mysqld.pid ended

Yang aku beri tanda merah adalah error yang terjadi dan dimatikannya service mysql oleh server.

Dan apabila service mysql coba diaktifkan muncul pesan :

# service mysqld start
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (111)

Apabila ini terjadi tidak perlu takut dan khawatir, cukup pilih salah satu solusi dibawah ini :

1. Menambah alokasi Physical RAM pada server, setidaknya 1GB atau lebih.

2. Membuat partisi Swap pada server, khususnya jika menggunakan VPS Digital Ocean yang sama sekali tidak ada alokasi partisi Swapnya. Untuk membuat partisi Swap silahkan ikuti langkah2 berikut, jangan lupa gunakan akses root untuk membuatnya :
# dd if=/dev/zero of=/swap.dat bs=1024 count=512M
# mkswap /swap.dat
# swapon /swap.dat
## Edit the /etc/fstab, dan tambahkan baris berikut.
/swap.dat none swap sw 0 0

3. Kurangi penggunaan Mysql buffer pool size dengan menambahkan baris berikut ini setelah [mysqld] atau pada baris paling bawah pada file /etc/my.cnf
[mysqld]
innodb_buffer_pool_size = 64M

 

perintah dibawah ini letakkan pada baris paling bawah :

# for innodb .._buffer_pool_size up to 50 – 80%
innodb_additional_mem_pool_size = 2M
innodb
# set .._log_file_size to 25% of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_log_wait_timeout = 50
innodb_flush_method=normal

Dan jangan lupa untuk menghapus file ib_logfile dan semua file ibdata dari /var/lib/mysql

Selamat mencoba dan semoga berhasil …… kalau ada kekurangan mohon dimaafkan.

 

 

Related Search

Tags: #database #debian #Digital Ocean #ERROR #linux #mysql #server

Top 10 Open-Source WordPress Theme Frameworks
Top 10 Open-Source WordPress Theme Frameworks
Ketika  membangun theme untuk WordPress, ada beberapa
Install Pi-Hole DNS Blokir Iklan dan Tracker
Install Pi-Hole DNS Blokir Iklan dan Tracker
Pi-Hole merupakan salah satu pelindung user internet
Migrasi VPS Panel dari Tuxlite ke VestaCP
Migrasi VPS Panel dari Tuxlite ke VestaCP
Setelah sekian lama menggunakan Tuxlite akhirnya diputuskan
Cara Cepat Root Unlock STB ZTE B760H Tanpa Bongkar
Cara Cepat Root Unlock STB ZTE B760H Tanpa Bongkar
Mungkin beberapa ada yang pernah berlangganan Indihome

Top