「すでに存在する」MySQL テーブルを削除できないのはなぜですか?

DDD
リリース: 2024-10-27 03:37:02
オリジナル
669 人が閲覧しました

 Why Can't I Drop a MySQL Table That

MySQL テーブルの謎: 存在するのに存在しない

テーブルの作成または変更中に「テーブルはすでに存在します」という矛盾したエラーに直面しながらも、「削除試行中に「不明なテーブル」というメッセージが表示されるため、ユーザーは困惑し、問題を解決できません。

異常を調査しています

データベースを調査したところ、テーブルが存在しないことが判明しました「show tables」および「describe」では、テーブルが存在しないことが報告されます。驚くべきことに、.frm ファイルが見つからず、「存在しない場合はテーブルを作成」​​を使用してテーブルを作成しようとすると失敗します。さらに悪いことに、データベースを削除すると MySQL がクラッシュします。

考えられる解決策

失敗したさまざまな試行を分析した結果、根本的な原因は欠落しているテーブル ファイルにあるようです。データ ディレクトリ内で、対応するデータ ファイルのない孤立した .frm ファイル、またはその逆の場合、この問題が発生する可能性があります。 innodb_file_per_table を使用する場合は、影響を受けるテーブルに .frm ファイルと .ibd ファイルの両方が存在することを確認してください。 MYISAM の場合、予期されるファイルは .frm、.MYI、および .MYD です。

謎の解決

問題を解決するには、孤立したファイルをデータディレクトリ。これにより、影響を受けるテーブルの作成または削除が正常に実行され、データベースのクラッシュの問題が解決されるはずです。

以上が「すでに存在する」MySQL テーブルを削除できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!