2017-12-28 15 views
0

私のタイトルはちょっとあいまいかもしれませんが、私に説明させてください。MAMPのcatch-22のMySQL InnoDB

私はMAMP Proを使ってローカルにワードプレスのウェブサイトを作成しています。しかし、私はしばらく前にInnoDB: Unable to lock ./ibdata1, error: 35のエラーを受け取り、ibdata1を取り除くと、問題を解決できる可能性があります。私はそれ以来、私はMySQLの使用にいくつかの問題があったと思います。

他のプロジェクトで少し作業をした後、私はこの問題に戻っています。したがって、私の記憶は最善ではありません。私は約2日間オンラインで、自分の問題に対してさまざまな「解決策」を試みました。

  • mysql.innodb_index_stats
  • mysql.innodb_table_stats
  • mysql.slave_master_info
  • mysql.slave_relay_log_info
  • mysql.slave_worker_info

これらのテーブルはである:私は今と呼ばれるデータベースmysqlに5つのテーブルに私の問題を下に集中してきました22のように見える。私はに(試行間でサーバを再起動すると)数回で試してみました:

  • が無いとプロMAMPを再インストールします。chmodするために、上記のパスの/Applications/MAMP/db/mysql56/mysql
  • 変更の権限から.frm.ibdファイルを削除します効果。
  • innodb_stats_persistent = 0my.cnfに設定しようとしました。
  • 答えに表示される影響を受けるテーブルを再作成してください:https://dba.stackexchange.com/a/54624

しかし、これは難しいところです。多くの投稿に示唆されているようにテーブルを作成すると、エラーが表示されます。例えば、Tablespace for table 'mysql.innodb_index_stats' exists. Please DISCARD the tablespace before IMPORT.です。だから、テーブルスペースを破棄して、ALTER TABLE mysql.innodb_index_stats DISCARD TABLESPACE;を含む多くの答えを出す方法を探します。これは私に別のエラー:Table 'mysql.innodb_index_stats' doesn't existを与えます。

これは、キャッチ22がある場所です。

これを解決する方法はありますか?

私はまた、サムがhttps://forums.aws.amazon.com/thread.jspa?messageID=609156で述べたように、テーブルを一時的な名前で作成しようとしましたが、それを非現実(私の知識から)テーブルmysql.innodb_index_statsに名前を変更できませんでした。この問題は、MySQL 5.5から5.6.35への予期せぬアップグレードに結びつく可能性があることを言及してください。

私は問題のために関連するすべての最初のページをすべて精査しましたが、役に立たない。私は、私と同じことに言及している2つの他のコメントを見つけましたが、答えはありません。だからこそ、私はそれを人々がそれを見つけることができるように、より説明され、献身的な郵便で前に持ち上げているのです。私のポストで何かを編集する必要があるかどうか教えてください、これは私の最初のものです。

+0

「my.cnf」以外のMySQLファイルの_any_で再生することはありません。 'ibdata1'を削除すると、すべてのInnoDBテーブルが破壊されます。 etc –

+0

これは間違いで私は難しい方法を学んだ:/ この@RickJamesを修正する方法はありますか? DBのmysysqlの新しいインスタンスをダウンロードする可能性がありますか、ここからどうやって行くのですか? あなたの答えをありがとう! – NipSauce

+0

申し訳ありません、あなたのデータはなくなっているようです。あなたは既に取られた3つの悲惨な行動について言及しました。この時点でアンインストールすることは難しいかもしれません。 –

答えて

0

私は今問題を解決しました。私がしたのは、MAMP PROフォルダに含まれているアンインストーラを実行することでした。 MAMPフォルダを削除し、ゴミ箱(デジタルのもの)を空にします。 その後私はMAMP PROの最新版をダウンロードしました.MAMP PROは最近4.3.0にアップデートされ、MySQLも5.6.38にアップデートされました。 これで、ibdata1を含む新鮮なmysqlデータベースと前述のすべての破損したテーブルが返されましたが、エラーは発生しません。

これは必要な人に役立ちます。