sql >> データベース >  >> RDS >> Mysql

MySQLデータベーステーブルのレコードの最大数

    整数の最大値は、テーブルに格納できる行の最大数とはほとんど関係がありません。

    確かに、主キーとしてintまたはbigintを使用する場合、主キーのデータ型の一意の値の数と同じ数の行しか持つことができませんが、主キーを整数にする必要はありません。 、CHAR(100)にすることができます。複数の列で主キーを宣言することもできます。

    行数以外にも、テーブルサイズには他の制約があります。たとえば、ファイルサイズに制限のあるオペレーティングシステムを使用できます。または、各行のサイズが1KBの場合、3億行しか保存できない300GBのハードドライブを使用することもできます。

    データベースサイズの制限は非常に高いです:

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

    MyISAMストレージエンジンはテーブルごとに2行をサポートしますが、--with-big-tablesを使用してMySQLを構築できます。 テーブルごとに最大2行をサポートするオプション。

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

    InnoDBストレージエンジンにはテーブルごとに6バイトの内部行IDがあるため、行の最大数は2または281,474,976,710,656になります。

    InnoDBテーブルスペースにも、64テラバイトのテーブルサイズの制限があります。これに収まる行数は、各行のサイズによって異なります。

    64TBの制限は、デフォルトのページサイズである16KBを想定しています。ページサイズを増やすことができるため、表領域を最大256TBまで増やすことができます。しかし、テーブルをそのサイズに成長させるずっと前に、他のパフォーマンス要因がこれをお勧めできないことに気付くと思います。



    1. Dockerコンテナ内で実行されているPostgreSQLを監視する方法:パート1

    2. レコードが変更されたときに自動的に更新されるSQLServerの日時列が必要です

    3. PostgreSQL:警告:コンソールコードページ(437)はWindowsコードページ(1252)とは異なります

    4. Microsoft Accessは簡単に習得できますか?