| この記事の要点 |
|
最短手順
MySQL がすでにサービスとして登録されているなら、管理者として開いたコマンドプロンプトで次の 2 行を実行するだけです。
sc query type= service state= all | findstr /i mysql
net start MySQL80
1 行目で表示された SERVICE_NAME を 2 行目の MySQL80 の部分に指定します。「MySQL80 サービスは正常に開始されました。」と表示されれば起動完了です。停止は net stop MySQL80 です。
サービスが見つからない場合は、MySQL がインストールされていないか、サービス登録されていません。以下の手順を順に確認してください。
前提
MySQL のインストールが完了していることを前提とします。完了していない方はこちらを参照してください。本稿は Windows 10 / 11 を対象とします。
Windows 版 MySQL の入れ方には主に次の 3 種類があり、起動方法が少し異なります。
| 入れ方 | サービス登録 | 起動方法 |
|---|---|---|
| MySQL Installer(MSI) | インストール時に自動登録(名前は MySQL80 など) | net start またはサービス画面 |
| ZIP アーカイブ版 | 自分で mysqld --install する | net start またはサービス画面 |
| XAMPP 同梱(MariaDB) | 既定では登録しない | XAMPP Control Panel の Start ボタン |
環境変数(PATH)の設定
コマンドプロンプトから mysql や mysqld を実行できるように、MySQL の bin ディレクトリ(例: C:\Program Files\MySQL\MySQL Server 8.0\bin)を環境変数 PATH に追加しておきます。
環境変数の設定方法はこちら。コマンドプロンプトの開き方はこちら。
PATH を変更したら、開いていたコマンドプロンプトは閉じて開き直してください。開き直さないと新しい PATH が反映されません。
MySQL をサービスとして登録する(ZIP 版の場合)
ZIP 版を展開しただけの場合は、まずデータディレクトリを初期化してから、サービスとして登録します。管理者としてコマンドプロンプトを開き、以下を実行します。
cd "C:\mysql\bin"
rem データディレクトリの初期化(初回のみ)。root の仮パスワードは .err ログに出力される
mysqld --initialize --console
rem サービスとして登録(サービス名を省略すると MySQL になる)
mysqld --install
rem 設定ファイルとサービス名を指定する場合
rem mysqld --install MySQL80 --defaults-file="C:\mysql\my.ini"
「Service successfully installed.」と表示されれば成功です。
「Install/Remove of the Service Denied!」と表示された場合は、管理者として実行できていません。スタートメニューで「cmd」を検索し、右クリックから「管理者として実行」を選んで開き直してください。
サービス一覧に MySQL が登録されたので、そちらから起動・停止をすることもできます(サービスの確認方法はこちら)。登録を取り消すときは mysqld --remove サービス名 を実行します。
MySQL の起動と停止
コマンドプロンプト(管理者)で以下のコマンドを実行しましょう。サービス名の大文字・小文字は区別されません。
net start mysql
net stop mysql
PowerShell を使う場合は次のコマンドでも同じことができます。
Get-Service *mysql*
Start-Service MySQL80
Stop-Service MySQL80
GUI で操作したい場合は、Win + R で「services.msc」を開き、MySQL のサービスを右クリックして「開始」「停止」を選びます。同じ画面の「スタートアップの種類」を「自動」にしておくと、Windows 起動時に MySQL も自動で起動します。
起動できないときの原因と対処
| 表示されるメッセージ | 原因と対処 |
|---|---|
| システム エラー 5 が発生しました。アクセスが拒否されました。 | 管理者権限がありません。コマンドプロンプトを管理者として実行します |
| サービス名が無効です。 | サービス名が違うか、未登録です。sc query で正しい名前を確認します |
| MySQL サービスを開始できませんでした。 | 設定ファイルの誤り、データディレクトリの破損や権限、ポート競合などです。データディレクトリ内の「ホスト名.err」ファイルの最後の数行に具体的な理由が書かれています |
| サービスは開始されましたが、すぐに停止した | 上と同じく .err ファイルを確認します。my.ini の datadir や basedir のパスの誤りが典型です |
ポート 3306 を別のプロセスが使っていないかは netstat -ano | findstr :3306 で確認できます。XAMPP の MariaDB と MySQL を両方入れていると、同じポートを取り合って片方が起動できないことがよくあります。
サービスを使わずに原因を調べたいときは、mysqld --console でフォアグラウンド起動すると、エラーメッセージがそのまま画面に表示されます。
起動できたかの確認方法
sc query MySQL80
mysql -u root -p -e "SELECT VERSION();"
sc query の STATE が RUNNING になっていて、mysql コマンドでバージョンが表示されれば、MySQL は正常に動いています。
関連
- mysqld: Can't change dir のエラー対処 (Windows)
- MySQL root パスワードの変更方法
- MySQL root ユーザーの初期パスワード確認方法完全ガイド
- Windows コマンドプロンプト コマンド一覧
- MySQL/MariaDB 初期設定 (my.cnf) 完全ガイド
子ページはありません
- MySQLの起動(Windows)
- MySQLの起動、停止、再起動(Linux)
- MYSQL への接続
- データベース一覧の表示
- データベースへの接続
- テーブル一覧を表示
- テーブル定義を確認
- ユーザーおよびパスワード一覧の確認
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- プロジェクトをTomcatプロジェクトとして認識させる方法 2026-10-07 22:32:50
- MySQLの1366 Incorrect string value|Laravelの文字コード・絵文字エラー 2026-10-07 21:54:03
- curlの証明書ホスト名不一致|旧エラー51・現行60の確認と対処 2026-10-07 21:54:03
- LaravelのMassAssignmentException|fillableの原因と安全な対処 2026-10-07 21:54:03
- Eclipse で Tomcat の起動ログがコンソールに出ない時の確認手順 2026-10-07 21:54:02
- MySQLにおける中央値(Median)の導き方(バージョン8未満) 2026-10-07 13:49:45
- getInputForward 2026-10-07 13:41:15
- JSONから配列に変換 2026-10-07 13:41:15
- ビューから値をモデルに格納しコントローラーで受け取る方法 2026-10-07 13:23:41
- Laravelのテーブル作成と定義変更|マイグレーション・up/down・注意点 2026-10-07 13:23:41
- NumPy 配列に要素を追加する方法 (append / concatenate) 2026-10-07 13:23:41
- MariaDB・MySQLで現在日時を取得する方法|NOW・タイムゾーン・保存型 2026-10-07 13:13:36
- 【django】テンプレートで定数を使用する方法 2026-10-07 13:10:15
- Spring BootにおけるApplication.propertiesの環境依存設定の分割方法 2026-10-07 12:09:35
- Not supported for DML operations【Springエラー】 2026-10-07 11:09:38