MySQLでやりたいことから調べられるリファレンス

MySQL 逆引きリファレンス

対応方法:The service already exists!

スポンサードリンク

MySQL を Windows のサービスとして登録する際に、The service already exists! というエラーが表示されて登録できないことがあります。

D:\app\mysql5.6.21\bin>mysqld --install
The service already exists!
The current server installed: D:\app\mysql5.6.21\bin\mysqld MySQL

D:\app\mysql5.6.21\bin>

この場合、同じ名前のサービスが既に登録されていて、名称が重複でエラーになっていることが考えられます。

MySQL5.6 では mysqld --install を実行する際に明示的にサービス名を指定しないと、MySQL というサービス名でサービスを登録しようとします。

その為、もし既に MySQL という名前でサービスが登録されている場合は、名称の重複でエラーとなります。

まずは本当に同じ名前のサービスが登録済であるかを確認してみましょう。

Windwosで登録済サービスの一覧を確認する方法

Windows で登録済のサービスを確認するには [スタート] → [プログラムとファイルの検索]services.msc と入力します。

起動したサービスウインドウ上で登録されたサービスの一覧を確認することができます。

名称重複を回避する方法

サービス名の重複エラーを回避するために、対応方法は次の2つが考えられます。

MySQL のサービス名を変更して登録する。

書式
mysqld --install サービス名

今回は MySQL5.6.21 というサービス名で登録してみます。

D:\app\mysql5.6.21\bin>mysqld --install  ← 名称重複でエラー 
The service already exists!
The current server installed: D:\app\mysql5.6.21\bin\mysqld MySQL

D:\app\mysql5.6.21\bin>mysqld --install MySQL5.6.21  ← サービス名を指定して重複を回避 
Service successfully installed.

D:\app\mysql5.6.21\bin>

登録済サービス一覧を参照すると、指定したサービス名で MySQL のサービスが登録されていることを確認できます。

既存の MySQL のサービスを削除して再登録する。

MySQL のサービスをアンインストールする場合は mysqld --remove を使用します。

書式
mysqld –remove 削除するサービスの名前

今回は MySQL という名前のサービスを削除した後、再度 MySQL という名前でサービスを登録しています。

D:\app\mysql5.6.21\bin>mysqld –remove MySQL  ← サービス MySQL を削除 
Service successfully removed.

D:\app\mysql5.6.21\bin>mysqld --install  ← サービス MySQL を登録(サービス名は暗黙的に付与) 
Service successfully installed.

D:\app\mysql5.6.21\bin>
スポンサードリンク

mysqld 関連の警告やエラー

その他のカテゴリー一覧