1

主キーを MYSQL テーブルに追加し、そのテーブルの日付列に従って分割しようとするときに考慮する必要があるチェック ポイントを説明してください。

4

1 に答える 1

0

主キーの作成の場合:

おそらく、次のことを確認する必要があります。

  • テーブルにすでに主キーが定義されていない。

    クエリを使用しDESCRIBE TABLEます。

  • 主キーとして機能する列には、集計時に重複が含まれていません。

    SELECT CONCAT(col1, col2, col3) AS key
    FROM table
    GROUP BY col1, col2, col3
    HAVING COUNT(key) > 1
    

    または、クエリでIGNOREオプションを使用して重複を削除し、最初に一致したエントリを主キーとして保持することもできます。ALTER TABLE

  • InnoDB を除いて、ストレージ ノードに少なくとも必要なだけの空き領域があることを確認します。これは通常、テーブルのサイズよりも少し大きくなります。MySQL はテーブルを変更するときに新しいファイルにテーブルをコピーする必要があるためです。 .

特定の列でパーティション化する場合、その列は主キーの一部である必要があり、オプションでそれ自体のインデックスである必要があります。そのため、主キーの作成に使用される列グループと上記のチェック リストに、分割する日付を含める必要があります。

于 2013-04-09T11:34:53.693 に答える