Максимальное количество записей в таблице базы данных MySQL

Что является верхним пределом записей для таблицы базы данных MySQL. Я задаюсь вопросом об автоинкрементном поле. Что произошло бы, если я добавляю миллионы записей? Как обработать этот вид ситуаций? Спасибо!

165
задан Ankit 16 April 2019 в 10:59
поделиться

2 ответа

mysql типы int могут делать довольно много строк: http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

unsigned int наибольшее значение - 4,294,967,295
unsigned bigint наибольшее значение - 18,446,744,073,709,551,615

61
ответ дан 23 November 2019 в 21:09
поделиться

Наибольшее значение целого числа имеет мало общего с максимальным количеством строк, которое вы можете сохранить в таблице.

Это правда, что если вы используете int или bigint в качестве первичного ключа, у вас может быть столько строк, сколько уникальных значений в типе данных вашего первичного ключа, но вам не нужно делать первичным key целое число, вы можете сделать его CHAR (100). Вы также можете объявить первичный ключ для нескольких столбцов.

Существуют и другие ограничения на размер таблицы, помимо количества строк. Например, вы можете использовать операционную систему с ограничением размера файла. Или у вас может быть жесткий диск емкостью 300 ГБ, на котором может храниться только 300 миллионов строк, если размер каждой строки составляет 1 КБ.

Пределы размера базы данных действительно высоки:

http://dev.mysql.com/doc/refman/5.1/en/source-configuration-options.html

Механизм хранения MyISAM поддерживает 2 32 строк на таблицу, но вы можете построить MySQL с параметром - with-big-tables , чтобы он поддерживал до 2 64 строк на таблицу.

http://dev.mysql.com/doc/refman/5.1/en/innodb-restrictions.html

Механизм хранения InnoDB, похоже, не имеет ограничения на количество строк, но имеет ограничение на размер таблицы 64 терабайта. Сколько строк в него помещается, зависит от размера каждой строки.

228
ответ дан 23 November 2019 в 21:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: