0

切り捨てたい order_line という名前の innodb テーブルがあります。私が受け取るメッセージは、ストレージ エンジンからエラー -1 が取得され、テーブルが完全に失われました! 幸いなことに、それは私の開発環境であり、本番環境ではありません!

どうすればテーブルを取り戻すことができますか? 私のディスク容量は 14 GB なので、それが問題になることはありません

助けてください!

これは私のログファイルが言うことです:

バージョン: '5.6.11' ソケット: '' ポート: 3308 MySQL Community Server (GPL)
2013-09-16 12:41:47 134c InnoDB: ファイル操作でのオペレーティング システム エラー番号 5。
InnoDB: エラーは、mysqld にアクセス権がないことを意味します
InnoDB: ディレクトリ。サブディレクトリを作成した可能性もあります
InnoDB: データファイルと同じ名前。

2013-09-16 12:41:47 134c InnoDB: ファイル名 .\shopping\orderline.ibd
2013-09-16 12:41:47 134c InnoDB: ファイル操作呼び出し: 'create' が OS エラー 105 を返しました。
2013-09-16 12:41:47 134c InnoDB: ファイル操作でのオペレーティング システム エラー番号 5。
InnoDB: エラーは、mysqld にアクセス権がないことを意味します
InnoDB: ディレクトリ。サブディレクトリを作成した可能性もあります
InnoDB: データファイルと同じ名前。
2013-09-16 12:41:47 3220 [エラー] InnoDB: ファイル '.\shopping\orderline.ibd' を作成できません

2013-09-16 12:41:47 3220 [エラー] InnoDB: TRUNCATE TABLE shopping/orderline failed to create new tablespace
2013-09-16 12:41:47 134c InnoDB: .ibd ファイルが見つからないため、テーブル "shopping"."orderline" の統計を計算できません。ヘルプについては、http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html を参照してください。
4

1 に答える 1

0

次のコマンドを実行します

 ALTER TABLE orderline DISCARD TABLESPACE

 DROP TABLE orderline 

 CREATE TABLE OrderLine ( 
     Your Table Field definitions here
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8

Alter Table & Drop Table を実行するとエラーが発生しますが、データ ディクショナリからテーブルが削除されます。

Mysql5/Data/ ディレクトリへのアクセス権があることを確認してください

于 2013-09-16T14:14:32.390 に答える