XAMPPを開いてMySQLの起動ボタンをクリックするとエラーが発生します。私はその直前に始めましたが、今はうまくいきません。
12:19:12 PM [mysql] MySQLアプリを起動しようとしています...
12:19:12 PM [mysql]ステータスの変更が検出されました:実行中
12:19:13 PM [mysql]ステータス変更が検出されました:停止しました
12:19:13 PM [mysql]エラー:MySQLが予期せずシャットダウンしました。
12:19:13 PM [mysql]これはポートがブロックされていること、依存関係がないことが原因である可能性があります。
12:19:13 PM [mysql]不適切な権限、クラッシュ、または別の方法によるシャットダウン
12:19:13 PM [mysql]ログボタンを押してエラーログを表示し、確認します。
12:19:13 PM [mysql]より多くの手がかりを得るためのWindowsイベントビューア
12:19:13 PM [mysql]さらに支援が必要な場合は、こちらをコピーして投稿してください。
12:19:13 PM [mysql]フォーラム全体のログウィンドウ
これがエラーログの内容です。
2013-08-02 12:19:12 4536 [注意]プラグイン「FEDERATED」は無効になっています。
2013-08-02 12:19:12 f64 InnoDB:警告:innodb_additional_mem_pool_sizeの使用は推奨されていません。このオプションは、オプションinnodb_use_sys_mallocおよびInnoDBの内部メモリアロケータとともに、将来のリリースで削除される可能性があります。
2013-08-02 12:19:12 4536 [注意] InnoDB:InnoDBのメモリヒープが無効になっています
2013-08-02 12:19:12 4536 [注意] InnoDB:ミューテックスとrw_locksはWindows連動機能を使用します
2013-08-02 12:19:12 4536 [注意] InnoDB:圧縮テーブルはzlib 1.2.3を使用します
2013-08-02 12:19:12 4536 [注意] InnoDB:CPUのcrc32命令を使用していません
2013-08-02 12:19:12 4536 [注意] InnoDB:バッファプールの初期化、サイズ= 16.0M
2013-08-02 12:19:12 4536 [注意] InnoDB:バッファプールの初期化が完了しました
2013-08-02 12:19:12 4536 [注意] InnoDB:サポートされている最高のファイル形式はBarracudaです。
2013-08-02 12:19:12 4536 [注意] InnoDB:ibdataファイルのログシーケンス番号0と0は、ib_logファイルのログシーケンス番号1616798と一致しません。
2013-08-02 12:19:12 4536 [注意] InnoDB:データベースは正常にシャットダウンされませんでした。
2013-08-02 12:19:12 4536 [注意] InnoDB:クラッシュリカバリを開始しています。
2013-08-02 12:19:12 4536 [注意] InnoDB:.ibdファイルから表領域情報を読み込んでいます...
最も重要なエラーメッセージはこちらです。
2013-08-02 12:19:12 4536 [エラー] InnoDB:
以前に開いた表領域を開こうとしました。
以前のテーブルスペースmysql/innodb_table_statsはファイルパスにスペースID:1を使用します:。\ mysql\innodb_table_stats .ibd.
ファイルパスにスペースID:1を使用しているテーブルスペースxat/paymentを開くことができません:。\payment.ibd
ログの残りの部分:
InnoDB:エラー:単一テーブルのテーブルスペースファイルを開けませんでした。\ xat\payment.ibd
InnoDB:テーブルが次のようになる可能性があるため、クラッシュリカバリを続行しません。
InnoDB:InnoDBログのログレコードを適用できない場合は破損します。
InnoDB:問題を解決してmysqldを起動するには:
InnoDB:1)ファイルに許可の問題があり、mysqldができない場合
InnoDB:ファイルを開き、権限を変更する必要があります。
InnoDB:2)テーブルが不要な場合、またはバックアップから復元できます。
InnoDB:その後、.ibdファイルを削除すると、InnoDBは通常の処理を行います。
InnoDB:リカバリをクラッシュさせ、そのテーブルを無視します。
InnoDB:3)ファイルシステムまたはディスクが壊れていて削除できない場合
InnoDB:.ibdファイル、my.cnfでinnodb_force_recovery> 0を設定できます。
InnoDB:そしてここでInnoDBにクラッシュ回復を継続させる。
これらのエラーの原因は何ですか。また、それらを修正する方法を教えてください。
ちょっと私はちょうどこれをした、それは働いた:
C:\xampp\mysql\data
ディレクトリに移動しますibdata1
ファイルうまくいくはずです
それを修正する必要があります。
私のXampp MySQLは以下のようにちょうどうまくいった:
01.Go to mysql/data/ directory
02. delete the ibdata1 & ib_logfile*(ib_logfile0,ib_logfile1,ib_logfile101) file
03. restart xampp server
Mysql設定ファイル(my.ini)の[mysqld]
セクションの下に次の行を追加し、その後Apache Webサーバーとmysqlサービスを再起動します。
[mysqld]
innodb_force_recovery = 4
Mysqlを起動しようとしたとき、私は私のC:\xampp\mysql\data\mysql_error.log
に同じ種類のエラーを得ました。
2013-08-05 01:20:32 6780 [ERROR] InnoDB: Attempted to open a previously
opened tablespace. Previous tablespace mysql/slave_relay_log_info uses
space ID: 3 at filepath: .\mysql\slave_relay_log_info.ibd. Cannot open
tablespace test_database/test_table which uses space ID: 3 at filepath:
.\test_database\test_table.ibd
エラーをよく読む必要があります。これはtest_database
がmysqlの起動を妨げていることを示しています。
問題のあるデータベースを破壊することができます、これらのステップは問題を解決します:
C:\xampp\mysql\data
です。test_database
でした。C:\xampp\mysql\data\mysql\backuptablespace
という新しいフォルダーを作成します。うまくいかない場合は、ファイルを元の場所に戻してください。そうすれば、元の場所に戻ります。
データベースを削除したくないし、バックアップもしたくない場合
もしあなたがテーブルデータのバックアップを持っていなくて、何かが壊れているためにmysqlが起動しないなら、あなたはそれをあなたがそれを壊したことを正確にするためにあなたの方法を推測しチェックするために除去のプロセスを使わなければならないでしょう。次の手順を実行します:
C:\xampp\
全体のクローンを作成し、安全な場所に保存して、始めの場所に戻ることができるようにします。C:\xampp\mysql\data\mysql
からこれらのファイルを削除してみてください。db.frm db.MRD db.MYI db.opt user.frm user.MYD user.MYI
Mysqlを起動したら、追加したものが見つかるまで元に戻すことを試みます。これに対する1つのボーナスはあなたがmysqlがどうやって内部で動作するかを学ぶことです。
原子力オプション:
あなたがしたことがmysqlサーバーを台無しにしました。 XAMPPをアンインストールして再インストールすると、破損が元に戻ります。
管理者としてXAMPPを実行していない場合、MySQLをシャットダウンすると頻繁に破損が発生するため、テーブルを修復または削除する必要があります。これを回避するには、XAMPPを管理者として実行するか、適切なコマンドでMySQLをシャットダウンするためのプロンプトメソッドを使用する必要があります。
Kratosが示唆するようにibdata1
を削除することができますが、あなたのデータベースの他の部分がまだ/mysql/data/
フォルダにあるので、これは壊れたデータベースであなたを残すことができます。私の場合、この残余データは私がWordPressを正常にインストールするのを妨げました。
ダメージを元に戻すためのよりきれいな方法はあなたの/mysql/data/
フォルダ全体を元に戻すことです。 Windowsにはフォルダのバージョン管理機能が組み込まれています - /mysql/data/
を右クリックしてRestore previous versions
を選択してください。その後、フォルダの現在の内容を削除して古いバージョンの内容に置き換えることができます。
補遺:XAMPPを管理者として実行することを忘れないようにするには、XAMPPショートカットを右クリックし、Properties
、次にAdvanced
に移動し、最後にRun as administrator
にチェックマークを付けます。
私もこの問題に直面しており、これが私が解決した方法です。
1。 xamppがサブディレクトリの下にないことを確認してください。たとえば、C:\ xamppになります。
2。アプリケーションを実行する際には、管理者として実行する必要があります。
これがうまくいくことを願っています!
私は同じ問題に直面していました、そして、上記の解決策のどれも私を助けませんでした。私はmysql設定ファイル(my.ini)に行き、[mysqld]の下のポート番号を変更しました。デフォルトのmysqlは3306ポートで動作します。
port= 3306
私はそれをに変えました、
port= 8111
その後Administratorとして実行します。最後にこれは私のために働いた。
Config-> Apache-> httpd.confを開きます。 Listenまたは80を検索し、listenポートを8081に更新してサーバーを再起動します。ああ、Skypeを持っているのならシャットダウンする。
みんなMySqlサーバーがインストールされていないことを確認してください。 MySqlサーバーがプリインストールされていて、xamppコントロールパネルからmysqlを起動すると、いくつかのポートの競合が発生し、機能しません。x [xamppコントロールパネルからmysqlを起動する前にSO 。私は過去にmysqlサーバーをインストールしたので.netを使用します。アンインストールすると問題が解決しました。
私はmysql/bin/my.iniでこのステートメントをコメントします
'innodb_additional_mem_pool_size=2M'
そしてそれは私の問題を解決します。あなたより
私にとっては、ポート80を占有していたSkypeをやめ、それから私がSkypeを実行していた時よりもApacheがポート80でうまく動いたので、今度は別のポートを選びました。
これが私がしたことです。コンピューターを再起動しました。次にservices.mscを実行します。 MySQLサービスを停止してから再開しました。 Xamppサーバーを再起動しました。
システム時刻が正しいことを確認してください。鉱山はどういうわけか2040年に設定されました、日付を修正することは問題を解決しました。
クラッシュメッセージが "mysql.exeが動作を停止しました"である場合ただ実行管理者としてxampp-control.exeあなたの問題を即座に解決します。
これは、MySQLデータベースがすでにポート3306で実行されていることを意味します。
XAMPPのコントロールパネルで、[設定]ボタンを押し、その後[my.ini]を押します。その後、Ctrl-Fを押して '3306'を検索してください。あなたが見つけたどんな '3306'もあなたが選んだ違うポート番号に置き換えてください(あなたは3307か3308を選ぶことができます - 私は2811を選びました、そしてそれはうまくいきました)。
「3306」が書き込まれている場所をすべて置き換えたら、ファイルを保存して、コントロールパネルの[Start]をもう一度押します。
以下のファイルの名前をmysql/dataから変更します。ib_logfile0 ib_logfile1 ibdata1
my.cnf innodb_buffer_pool_sizeを200Mに、ram innodb_log_buffer_sizeを32Mに
Apacheサーバーを再起動します
あなたに役立つことを願っています
mariaDBを使用している場合は、これを試すことができます。
上記のいずれかの方法でうまくいかない場合は、Xamppディレクトリの背面に移動してXamppを再インストールしてください。それはきっとうまくいきます!
これを行うには、Modules Servicesの下のxオプションをクリックしてMYSQLサービスをインストールする必要があります。それからサービスを開始してください。どうぞ。
上記の解決策は私のために働きませんでした。それから私は以下でした:
このディレクトリ内のフォルダを除いて、C:\ xampp\mysql\data \ディレクトリ内のすべてのファイルを削除しました。それは完全にうまくいきましたが、私の以前のデータベースは今はうまくいきません。あなたがそれがphpmyadminの中のあなたの前のデータベースをすべて削除することになるのを気にしないのであれば、上記をしてください。
私のmysqlデータとhtdocsをdropboxに同期させた私の場合は、mysql/dataフォルダとサブフォルダ内の衝突したファイルを削除する必要がありました。衝突したファイルはその名前で識別でき、dropboxはそれを教えてくれます。それは私のために問題を解決しました。