Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

This is the error I get when attempting to start the mysql server:

    # mysqld start
    130105  8:51:28 [Note] Plugin 'FEDERATED' is disabled.
    130105  8:51:28 InnoDB: The InnoDB memory heap is disabled
    130105  8:51:28 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    130105  8:51:28 InnoDB: Compressed tables use zlib 1.2.3.4
    130105  8:51:28 InnoDB: Using Linux native AIO
    130105  8:51:28 InnoDB: Initializing buffer pool, size = 128.0M
    InnoDB: mmap(135987200 bytes) failed; errno 12
    130105  8:51:28 InnoDB: Completed initialization of buffer pool
    130105  8:51:28 InnoDB: Fatal error: cannot allocate memory for the buffer pool
    130105  8:51:28 [ERROR] Plugin 'InnoDB' init function returned error.
    130105  8:51:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    mysqld: Too many arguments (first extra is 'start').
    Use --verbose --help to get a list of available options
    130105  8:51:28 [ERROR] Aborting

    130105  8:51:28 [Note] mysqld: Shutdown complete

    #

This started occuring after I ran mysql_upgrade (Debian Squeeze). This next part happens too when I try to initialize mysql:

    Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!

Can anyone explain this and how I can just start mysqld normally and get back to running my site?

share|improve this question

2 Answers 2

up vote 2 down vote accepted

InnoDB cannot allocate enough memory for the memory pool. Check your config for the innodb_buffer_pool_size if it is not set to high.

share|improve this answer
1  
@joeymiller It's all in the messages. It wants to allocate 128 MB, but The InnoDB memory heap is disabled. –  ott-- Jan 5 '13 at 16:53
    
Okay, thanks for that. I think I have that part fixed, and mysqld appears to be running fine (per pastebin.com/58xp3EHU), but I think something is still going wrong because I cannot access anything MySQL-related on my site. –  Joey Miller Jan 5 '13 at 17:09

Never mind, this had to do with a user/pass mixup in /etc/mysql/debian.cnf. Looks like what I installed changed those values, but for those that ever have the same problem be sure that the values in debian.cnf are the same user/pass values you want to use for your stuff. Encrypting it wouldn't hurt but debian.cnf is unsafe in general. Thanks for the help, everyone.

Also, the answer above is true except there was never a problem with it for me even though it looked like there was. It was probably something caused by debian.cnf. I never had problems with the innodb variable so I didn't do anything to it.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.