Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a small vps, with only 256mb of ram, with maximum burst up to 512mb. When I configure my vps without innodb, it only uses 130 mb of ram, so that is no problem for me. But when I turn on innodb, The memory usage grows to about 300-400 mb. Is it possible to run innodb such that I won't exceed the 256mb? preferably I don't want to use more than 100mb for innodb. I already came across some sites which said I could limit the memory usage, but if I limit it to only 100mb will the db run well enough? (compared to for example the MyISAM storage engine)

If 100mb is to little memory for innodb, can you recommend me any other storage engine which supports transactions?

share|improve this question

1 Answer 1

up vote 3 down vote accepted

You should use 75-80% or RAM as the max buffer pool size if the server is dedicated to doing MySQL

Please place these two lines in /etc/my.cnf (my.ini)

[mysqld]
innodb_buffer_pool_size=200M
innodb_log_file_size=50M

If you want to go with 100MB recommendation for InnoDB then use these instead

[mysqld]
innodb_buffer_pool_size=100M
innodb_log_file_size=25M

Make sure you resize the innodb log files as follows:

service mysql stop
rm -f /var/lib/mysql/ib_logfile*
service mysql start

(Edit: fixed typo in rm command)

share|improve this answer
    
For those of you wondering, rm /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile1. –  Xeoncross Jul 28 '12 at 17:39

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.