MySQLをWin7 x64にインストールしようとすると「エラー1067:プロセスが予期せず終了しました」


14

マシンにMySQL v5.5をインストールしようとして、レンガの壁にぶつかりました。

私のPCはWindows 7 x64 Enterpriseエディションです。

MySQLは正常にインストールされますが、「MySQL Instance Configuration Wizard」を実行すると、「Start Service」ステップで永久に停止します(応答なしで30分間実行できます)。サービスにアクセスすると、「MySQL」サービスが開始されていないことがわかります。開始しようとすると、「WindowsはローカルコンピューターでMySQLサービスを開始できませんでした。エラー1067:プロセスが予期せず終了しました。」

私は次を試しました:

  • ファイアウォールをオフにします。
  • すべてのウイルス対策ソフトウェアをアンインストールします。
  • MySQLの32ビットバージョンのインストール/再インストール。
  • MySQLの64ビットバージョンのインストール/再インストール。
  • 「C:\ program files \ MySQL」および「C:\ program files(x86)\ MySQL」の内容のアンインストール、削除、再インストール。
  • MySQLという名前の不正なサービスがないことを確認していますか???? (以前のインストールから)。
  • ポート3306が代替プログラムによって使用されていないことを確認します。
  • MySQLが使用するデフォルトのポートを変更します。
  • 「C:\ windows」で「my.ini」および「my.ini.cnf」を確認します(そこには何もありませんが、問題を引き起こす可能性があります)。
  • MySQLインストーラーと構成ウィザードの両方を「管理者モード」で実行します。
  • UACをオフにします。
  • 何も変更せずにデフォルトでインストールします。
  • マシンをリブートします(これまでに約6回リブートします)。
  • ファイアウォールでポート3306を開きます(TCPとUDPの両方、インバウンドとアウトバウンド)。
  • MySQLを設計したプログラマーの不器用さを誓って、インストールすることすらできない(それが助けになるかのように!)

私のマシンは他のすべての方法で100%動作しています。InfiniDB(MySQL互換データベース)は、Visual Studio 2010、Microsoft SQL Serverなどと同様に、100%インストールします。

これを回避する方法についてのアドバイスはありますか?

psこれは、プロセスを強制終了するまで15分間停止した画面です。

代替テキスト

更新2010-12-20

MySQL v5.1を試しましたが、機能しませんでした。その驚くべきこと-「mysqld /?」または「mysqld -help」と入力しても、何の助けも得られません。また、サービスを手動で再起動しようとしても、エラーメッセージは表示されません。それはもう役に立たないでしょうか?

更新2010-12-21

MySQL 6.0 alphaをインストールし、動作しました。しかし、「安定した」リリースが:(

更新2010-12-21

http://dev.mysql.com/doc/refman/5.1/en/windows-troubleshooting.htmlが見つかり、Windowsでのトラブルシューティングを扱っています。

サービスが開始しない場合にエラーログを生成できることを発見しました-こちらをご覧ください:http : //dev.mysql.com/doc/refman/5.1/en/error-log.html

更新2010-12-21

あぁ!手掛かり。実際にエラーを確認するには、「-console」を追加します。

mysqld --console

これは返します:

101221 13:57:28 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
101221 13:57:28  InnoDB: Initializing buffer pool, size = 203.0M
101221 13:57:28  InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file .\ib_logfile0 is of different size 0 56623104 bytes
InnoDB: than specified in the .cnf file 0 106954752 bytes!
101221 13:57:28 [ERROR] Plugin 'InnoDB' init function returned error.
101221 13:57:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
101221 13:57:28 [ERROR] Unknown/unsupported storage engine: INNODB
101221 13:57:28 [ERROR] Aborting
101221 13:57:28 [Note] mysqld: Shutdown complete

更新2010-12-21

正しくインストールされるようになりました。以下の回答をご覧ください。


私の場合、「my.ini」ファイルの設定パスが正しくありませんでした。それが他の誰かを助けることを願っています。
scepeda

回答:


11

問題の修正方法は次のとおりです。

ステップ1:デフォルトでは、サービスの開始に失敗した理由を見つけることはできません。したがって、非サービスモードで起動し、エラーをコンソールにパイプするように指示します。

mysqld --console

ステップ2:特定のケースでは、次の内容を削除する必要がありました。

C:\ProgramData\MySQL

...その後再インストールします。MySQL v5.5インストーラーにはバグがあります。MySQLv5.5をアンインストールして、インストールの問題を修正すると、C:\ ProgramData \ MySQLのクリーンアップに失敗します。つまり、MySQL v5.5をインストールすることはできません。その不正なディレクトリを削除せずに、その時点からそのマシン。

ヒント:

  • プロセスモニタで「mysqld」のインスタンスを強制終了してください。
  • 既存のサービスを削除するには、「sc delete MYSQLxx」を使用します。

OracleのMySQL開発チームへの公開書簡:

--- Oracleへの公開状を開始---

OracleのMySQL開発チーム各位:

MySQLのインストール時にサービスの開始に失敗した場合は、(a)エラーログの方向を示すか、(b)このエラーログを表示して、理由をお知らせください。

そうしないと、オラクルは無能な光に照らされます。

敬具、

WindowsにMySQLをインストールするすべての人。

--- Oracleへの公開書簡の終了---


3

Gravitasには同意しますが、再インストールする必要はありません(特に、MySQL
Server xxをC:/ Program Files /のデフォルト以外の別のフォルダーにインストールする場合)。
これらの手順は、サービスを正常に実行するのに役立ちました。Win7x64で動作したため、x32で十分だと思います:)

MySQL Server xxがインストールされている「my.ini」ファイルを開きます(私の場合は5.5でしたが、5.1でも問題ありません)。次
の行に移動します。

datadir=C:/ProgramData/MySQL/MySQL Server x.x/data->(これはデフォルトのパスです)
上記の行を次のように変更します:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server x.x/data/"

のすべてのコンテンツC:/ProgramData/MySQL/MySQL Server x.x/を、新しく指定されたdatadir
EXCEPT ib_logfile0&にコピーしますib_logfile1(バックアップとして他の場所に再配置します)。
を削除しC:/ProgramData/MySQL/MySQL Server x.x/ます。
再実行しMySQLInstanceConfigます。
チェックTCP/IP networkingしかしDO NOT変更のセキュリティ設定(変更せずに置いておきます)。
サービスを開始します(ib_logfile(1,2)再生成されます)。

PS:CCleanerで一時ファイルを再起動してクリーンアップします(再起動後)。何らかの(奇妙な?)理由により、上記の設定を適用した後、リブートするまでIDEまたはMySQL Workbench CE xxからMySQL DBMSに接続できません。

メモ:セキュリティ設定を編集
すると、他の設定でTCP / IPを有効にするときに導入された別のバグにより、構成ユーティリティがハングします。

お役に立てれば!


2

http://mydailytech.com/post/how-to-fix-mysql-error-1067/

上記のリンクを確認して従います-私の場合のように解決するはずです。

役立つことを願っています


申し訳ありませんが、これで問題は解決しませんでした。C:\ MYSQL55 \に再インストールして、長いファイル名が変更されたり、マシンがリブートされたりしないようにすることも試みました。Windows7ではMySQL v5.5以前が壊れているのではないかと思い始めました。 x64?
コンタンゴ

2

リガタムが投稿したウェブサイトから引用:

MySQLをインストールするときに、非標準ディレクトリにインストールする場合、MySQLを実行したりMySQLサービスをインストールしたりする前に、デフォルトファイルのパスの場所を指定する必要があります。そうしないと、エラー1067が表示されます。

まず、コマンドプロンプトを開きます。MySQLインストールフォルダーに移動し、mysqld.exeがある場所を見つけます。次に、これを実行します:

mysqld –remove MySql

これにより、MySQLサービスがアンインストールされます。defaults-fileパラメーターを使用してサービスを再インストールします。

mysqld –install <service name> –defaults-file=<full path of “my.ini” file>

例えば:

mysqld –install MySql –defaults-file=c:\mysql\my.ini

エラーのないMySQLインストールをお楽しみください。


申し訳ありませんが、これで問題は解決しませんでした。C:\ MYSQL55 \に再インストールして、長いファイル名が変更されたり、マシンがリブートされたりしないようにすることも試みました。Windows7ではMySQL v5.5以前が壊れているのではないかと思い始めました。 x64?
コンタンゴ

1
まったく壊れていないわけではなく、65台の開発用Windows 7台のマシン、18台のサーバー(nixとwindows 2008R2の両方)、およびホームコンピューターのwindows 2008と7の組み合わせで問題なく動作しています。私はそれが何かを適切にアンインストールしていないと思うので、それが何らかの点で立ち往生している理由です-私に起こったが、それはしばらく前でした。アンインストールし、すべてのmysqlディレクトリを手動で削除し、Windowsからサービスインスタンスも削除しました。
リハタム

2

そして、私は単に追加します-この場合、programdata \ mysqlだけでなくinnoDBフォルダも削除する必要があります:\ mysql datafiles


2

記録のために、私はに数時間5.5.20インストールしようとしましたWindows 2008 64bit。それは決して始まりません。修正できると思われるすべての例を試しました。ここで受け入れられた答えを含む。働いたことはありません。

だから私はダウングレードし5.1.61、チャンピオンのように機能しました。初めて。


2

私がしたことは

  1. デーモンが実行されていない状態で、Program Data \ MySQLの下のデータフォルダーを別の名前に変更します。
  2. コントロールパネルからmysqlをアンインストールする
  3. 再インストールします。セキュリティ設定の構成でエラー#1045で失敗します。MySQLがサービスとしてインストールされ、ルートパスワードが空白であることを確認しました。ユーザー名なしでmysqlユーティリティを実行してこれを確認しました。再試行またはスキップを求められたら、スキップをクリックし、現在のルートパスワードと新しいパスワードを指定するダイアログまで戻るボタンをクリックしました。現在のルートパスワードフィールドのパスワードを削除します。これは既に空白であり、新しいルートパスワードを指定したためです。エラーなしで構成が続行されました
  4. サービスを停止する
  5. 名前を変更した古いデータフォルダーからデータベースフォルダーをコピーします。ログファイルとibdataファイルをコピーしませんでした。
  6. フォルダーを現在の(新しい)データフォルダーに貼り付けます。
  7. サービスを再開しました
  8. mysqlユーティリティでテストして、データベースが表示されたかどうかを確認します。

ところで、念のためmysqldump --all-databasesでデータベースをダンプしました:)


2

論理innodb_flush_method=normalを追加my.iniしてくれました。MySQL 5.7を実行しているWindows 7 x64で、データベースを3TB HDDに移動しています。簡単なウォークスルー:

  1. Windowsコマンドプロンプトでサービスを停止します。 net stop sqlXX
  2. data次のコマンドでフォルダーをコピーしますxcopy "C:\ProgramData\MySQL\MySQL Server X.X\data" "<new_directory>\data" /s
  3. "<new_directory>\data"、削除ib_logfile0ib_logfile1
  4. 開きC:ProgramData\MySQL\MySQL Server X.X\my.ini、設定しdatadir="<new directory>/data"innodb_flush_method=normalファイルの下部に追加し、保存します
  5. 次のコマンドでサービスを再起動します net start mysqlXX

ここで、XXはバージョン番号です。私は5.7を使用してnet start mysql57いるため、を使用しました。

リンクされた議論によると、これのデフォルト値はinnodb_flush_method=unbufferedであり、512バイトのセクターサイズに依存します。これは、<2TB HDDの場合に正常です。HDDが2TBを超える場合、通常は4096バイトセクターでフォーマットされ、1067エラーが発生します。

私も上記のすべてを試してみましたが、これが唯一の解決策です。

http://bugs.mysql.com/bug.php?id=28913

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.