Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Maksymalna liczba rekordów w tabeli bazy danych MySQL

Największa wartość liczby całkowitej ma niewiele wspólnego z maksymalną liczbą wierszy, które można przechowywać w tabeli.

To prawda, że ​​jeśli używasz int lub bigint jako klucza podstawowego, możesz mieć tyle wierszy, ile wynosi liczba unikalnych wartości w typie danych klucza podstawowego, ale nie musisz ustawiać klucza podstawowego na liczbę całkowitą , możesz zrobić z niego CHAR(100). Możesz również zadeklarować klucz podstawowy w więcej niż jednej kolumnie.

Oprócz liczby wierszy istnieją inne ograniczenia dotyczące rozmiaru tabeli. Na przykład możesz użyć systemu operacyjnego, który ma ograniczenie rozmiaru pliku. Możesz też mieć dysk twardy o pojemności 300 GB, który może przechowywać tylko 300 milionów wierszy, jeśli każdy wiersz ma rozmiar 1 KB.

Limity rozmiaru bazy danych są naprawdę wysokie:

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

Silnik pamięci masowej MyISAM obsługuje 2 wiersze na tabelę, ale możesz zbudować MySQL za pomocą --with-big-tables opcja umożliwiająca obsługę do 2 wierszy na tabelę.

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

Silnik pamięci masowej InnoDB ma wewnętrzny 6-bajtowy identyfikator wiersza na tabelę, więc maksymalna liczba wierszy wynosi 2, czyli 281447976710656.

Przestrzeń tabel InnoDB ma również ograniczenie rozmiaru tabeli do 64 terabajtów. Ile wierszy się w tym mieści, zależy od rozmiaru każdego wiersza.

Limit 64 TB zakłada domyślny rozmiar strony 16 KB. Możesz zwiększyć rozmiar strony, a tym samym zwiększyć obszar tabel do 256 TB. Ale myślę, że inne czynniki wydajności sprawiają, że jest to niewskazane na długo przed zwiększeniem stołu do tego rozmiaru.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy liczba może być użyta do nazwania kolumny tabeli MySQL?

  2. Automatyzacja wdrażania bazy danych MySQL

  3. Kiedy używać STRAIGHT_JOIN z MySQL

  4. sql dołączyć do dwóch stołów

  5. java.sql.SQLException:nie znaleziono odpowiedniego sterownika dla jdbc:mysql://localhost:3306/dbname