MySQLの「テーブルの作成に失敗しました:エラー121」を解決するには?
MySQLのエラーでテーブルが作成できないエラーコード121が通常はテーブル定義内の何らかの制約条件の衝突が原因です。この問題を解決するには以下の手順で対処できます。
- チェックリストの定義で制約条件が正しいかどうかを確認する。また、それが競合しないことも確認する。主キー、ユニークキー、外部キー、デフォルトの値などの制約条件を確認することができる。
- 外部キー制約がある場合、参照される外部キー列と参照される主キー列が同じデータタイプと長さを有することを確認してください。
- インデックス重複チェック。重複するインデックスがあると、競合してテーブル作成が妨げられることがあります。
- テーブル名が既にデータベースにあるかどうかをチェックします。テーブル名が存在する場合、別のテーブル名を使ったり、存在しているテーブルを削除したりしてください。
- 現在のユーザがテーブルを作成するのに十分な権限を持っていることを確認して、テーブルを作成するための十分な権限がデータベースにあることをチェックします。
- MySQLのエラーログを確認して、そのほかに関連するエラーメッセージがないか確認してください。通常、エラーログはMySQLのデータディレクトリ内にあり、ファイル名は「hostname.err」です。
上記の方法でも解決しない場合は、テーブルを作成する前にデータベースをバックアップし、MySQLを再インストールしてみてください。MySQLの再インストールにより、データファイルや構成ファイル内の問題が修復される場合があります。