Мне очень трудно понять, сколько оперативной памяти мне нужно для этой базы данных. Прямо сейчас это одна таблица, которая в основном заполнена текстовым контентом и имеет 40 тысяч записей.
mysql> show table status;
+-------+--------+---------+------------+-------+----------------+-------------+-------- ---------+--------------+-----------+----------------+---------------------+---------------- -----+------------+-------------------+----------+----------------+---------+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
+-------+--------+---------+------------+-------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+-------------------+----------+----------------+---------+
| links | MyISAM | 10 | Dynamic | 44135 | 76235 | 3364651760 | 281474976710655 | 454656 | 0 | 88275 | 2010-06-30 12:33:00 | 2010-07-01 14:41:56 | NULL | latin1_swedish_ci | NULL | | |
+-------+--------+---------+------------+-------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------- -----+------------+-------------------+----------+----------------+---------+
1 row in set (0.00 sec)
Просто чтобы не запутались - это еще не 4гиг, но скоро будет. У меня есть сервер, на котором я хочу его установить, с 512 МБ оперативной памяти - этого будет достаточно или мне нужно обновить?
Большинство запросов будут выбирать одну строку по уникальному ключу. Думайте об этом как о блоге с более чем 40 тысячами статей.
Есть ли для этого какая-то формула? Похоже, мой индекс составляет всего 1/2 мегабайта или около того - это все, что нужно, чтобы оставаться в памяти, верно?
Я думаю, с тобой все будет в порядке. Если индекс может поместиться (и остаться) в памяти, этого должно быть достаточно, чтобы получить довольно приличную производительность, при условии, что вы не имеете дело с огромной нагрузкой запросов или чем-то еще.
Я бы сказал, что нет ... MySQL будет в лучшем виде с большим кешем запросов ... 512 - это ничто в наши дни ... тем более для БД такого размера, даже если вы не делаете много сложных соединений
У меня есть база данных mysql размером всего 150 МБ и предназначена для сайта eccomerce, я получаю 1000 посетителей в день, и мне нужен сервер на 1 ГБ. База данных имеет довольно большую структуру в запросах, но это сработает для меня, я рекомендую вам как минимум 2 ГБ оперативной памяти.