web-dev-qa-db-ja.com

ドロップされたビューは、「使用中」のテーブルとして表示され、ドロップできません

MySQL/MyISAMの設定に関するビューがあると、基になるテーブルで列が削除され、そのビューが無効になりました。

ビューを削除して再作成できるようにしたところ、MySQLはそれがテーブルであり(ビューではなく)、「使用中」とマークしました。

テーブルではないと表示されているため、このテーブルをドロップしたり修復したりすることはできません。

私は何時間もググってこれを修正する方法を見つけようとしました:(

Ubuntuを実行しているMySQLサーバーにrootアクセスがあります。 MySQLを停止してmyisamchkを試しましたが、うまくいきませんでした。

.frm dbデータフォルダ内のビューのファイル。

破損したアイテムを削除するためにそのファイルを削除する必要がありますか、それとも何らかの方法でデータベーススキーマからテーブルを削除しますか?

昨夜のdbバックアップがありますが、バックアップから復元して今日の変更を失うよりも、この1つの問題を修正したいと考えています。

3
Steve Wasiura

そのファイルの名前をanythingに変更するだけで、.frmで終わらないようにしてから、SHOW TABLES。それはなくなっているはずです。まだそこにある場合は、FLUSH TABLES、次にSHOW TABLES再び。

3