Назад | Перейти на главную страницу

innodb использование памяти MySQL

У меня есть небольшой vps, всего с 256 МБ оперативной памяти, с максимальным пакетом до 512 МБ. Когда я настраиваю свой vps без innodb, он использует только 130 МБ оперативной памяти, так что для меня это не проблема. Но когда включаю innodb, использование памяти вырастает примерно до 300-400 мб. Можно ли запустить innodb так, чтобы я не превышал 256 МБ? предпочтительно, я не хочу использовать для innodb более 100 МБ. Я уже сталкивался с некоторыми сайтами, на которых говорилось, что я могу ограничить использование памяти, но если я ограничу его только 100 МБ, будет ли БД работать достаточно хорошо? (по сравнению, например, с механизмом хранения MyISAM)

Если 100 МБ - слишком мало памяти для innodb, можете ли вы порекомендовать мне любой другой механизм хранения, поддерживающий транзакции?

Вы должны использовать 75-80% или RAM в качестве максимального размера буферного пула, если сервер предназначен для MySQL

Поместите эти две строки в /etc/my.cnf (my.ini)

[mysqld]
innodb_buffer_pool_size=200M
innodb_log_file_size=50M

Если вы хотите использовать рекомендацию 100 МБ для InnoDB, используйте их вместо

[mysqld]
innodb_buffer_pool_size=100M
innodb_log_file_size=25M

Убедитесь, что вы изменили размер файлов журнала innodb следующим образом:

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

(Edit: исправлена ​​опечатка в команде rm)