mysqlでカラムが削除できなかった

mysqlでカラムを削除しようとしたら、エラーが出て削除できなかった。

phpmyadmin で削除を実行すると以下のエラー

—————————————————————————————
#1034 –  表’テーブル名’の索引ファイル(key file)の内容が不正です。修復を試行してください。
—————————————————————————————

指示通り phpmyadmin で修復を試行するも、innodb では修復できないという内容が返ってきて変化なし。

ターミナルから削除してみるもやはりエラー。

エラー内容
—————————————————————————————
Incorrect key file for table~
—————————————————————————————

データの破損時に出るエラーらしいが、ディスク容量不足でも起こるとわかった。

カラムを削除するとき ALTER TABLE ~ が実行されるらしいが、このSQLは対象のテーブルを内部でコピーするので、テーブルと同じ容量以上の空きが必要らしい。

mysqlの空き容量を調べる。
—————————————————————————————
df -h /var/lib/mysql;
—————————————————————————————

結果
—————————————————————————————

Filesystem Size Used Avail Use% Mounted on
/dev/vda3 97G 90G 1.9G 99% /
—————————————————————————————

容量を99%利用していた。

扶養テーブルを削除したらエラーは出なくなった。

念のため、データが破損していないかのエラーチェックも行った。

—————————————————————————————
check table テーブル名 quick
—————————————————————————————

タイトルとURLをコピーしました