MySQLが起動しない

# MySQLにログインできない
:::note info
私のパソコンのバージョンはWindows 11 Proです
:::
自分のパソコンのバージョンを確認したい場合は、下のタスクバーにある四つ窓をクリック
(もしくは検索欄で「設定」と検索)し、
**設定→システム→バージョン情報**
と移動していき、「Windowsの仕様」欄の「エディション」で確認できます。
<br>
2か月ぶりにMySQLを操作しようと思い、コマンドプロンプトにて
`mysql -u user_name -p`を打つと…
(user_nameのところはSQLを作った時に自分で決めた名前を入れてください)
```:コマンドプロンプト
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061)
```
このようなエラーが出てきました。
調べてみると、どうやら「MySQLアプリが起動していないので使えませんよ」という旨の内容でした。

つまり、起動さえしてしまえば使える！ということです。


## 解決策
(検索欄から「サービス」を検索する←こっちの方が早いです。もしくは)
下のタスクバーから四つ窓をクリックし、すべてのアプリを表示した後、
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/3c685766-1c37-60a6-65b1-273df795ef59.png>
Windwsツールを開き
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/921d437b-2248-f2a5-079b-803282575ab3.png>
「サービス」を開きます。
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/72a7dd23-1e94-8153-9059-f9cf9f5cf75a.png>
そうするとたくさん歯車マークが出てくるので、その中からMySQLを探します。
私はMySQL var8.0をインストールしているので「MySQL80」と出ますが、後ろの数字はバージョンによって異なりますので、自分がインストールしたバージョンを探してください。
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/59ae43ee-aacd-1dee-fddc-5c0f72f02149.png>
こちらをクリックし、サービスの、開始ボタンをクリック。
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/62ff8f27-5d48-0f47-848f-5cde2f72b29b.png>
起動を待って、OKボタンを押します。下記のように**実行中になっていれば成功！**
<img width=500 src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521207/ce7a8b5d-c55f-8e34-ff7a-712e24e64bf6.png>
#### これにて準備完了。さっそくMySQLにログインしましょう！
`mysql -u user_name -p`を入力すると...
```:コマンドプロンプト
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.32 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
```
**こーんな風に出てきたら成功です！**
お疲れさまでした！！！
<br>

## おまけ . 他の方法ご紹介
**① NET START MYSQL80で起動** (私も起動成功しました）
まず、コマンドプロンプトを**管理者権限**で起動してください。
(意外とここの記載がない記事が多いです)<br>
**管理者権限でのコマンドプロンプトの立ち上げ方**
検索欄で「コマンドプロンプト」と検索するか、下のタスクバーの四つ窓からコマンドプロンプトを見つけます。
コマンドプロンプトを起動する前に、右クリック。すると「管理者として実行」があるので、
そこをクリックすると管理者としてコマンドプロンプトを操作できます。

その管理者権限をもったコマンドプロンプト内で
``NET START MYSQL80``を入力すると
```:コマンドプロンプト
> NET START MYSQL80
　The MySQL80 service is starting.
　The MySQL80 service was started successfully.
```
参照した記事ではこのように英語記載でしたが、私は日本語で「正常に起動しました」と出てきました。

Macの方は下記をターミナルで入力してください(こちらは試していないのでわかりません)
```:ターミナル
brew services start mysql@8.0
```
記事は下記を参照しました。
Macのコマンドは参照２で記載があります。(こちらの方もWindowsをお使いのようですが...)
>参照 : [備忘録)MySQLのlocalhostに接続できないときの対処法の例](https://qiita.com/Utricularor/items/aec6c9a4a3d0b3cf0e1d)
>参照 2 : [MySQLのログイン時にエラーが発生しました。 -- error 2003 (hy000) can't connect to mysql server on 'localhost' (10061)](https://qiita.com/hirotoshi_k/items/c93ca992a916867ba13f)
>参照 3 : [ある日、目が覚めたらMySQLが「Can't connect to MySQL server on '127.0.0.1'(10061)」になっていた時の備忘録](https://qiita.com/matty_alh/items/690d81fb06e69213e417)

**② フォルダの中から直接ログインして起動**
MySQLが格納されているフォルダに移動します
MySQLがどこに入っているかでコマンドが変わりますので、試してみてください。
私の場合は、
``cd C:\Program Files\MySQL\MySQL Server 8.0\bin``で移動しました。
```:コマンドプロンプト
PC C:\Program Files\MySQL\MySQL Server 8.0\bin>
```
このようになります。人によっては
``cd C:\Program Files (x86)\MySQL\MySQL Workbench CE 6.0.9\bin``でいどうしたり
``cd C:\xampp\mysql\bin``で移動する場合もあります。

その後、そのフォルダにいるまま``mysql -u user_name -p``を入力するとログインできるという記事も発見しました。
>参照 : [MySql Error ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)](https://stackoverflow.com/questions/23738610/mysql-error-error-2003-hy000-cant-connect-to-mysql-server-on-localhost-10)
>>英語の記事ですが、日本語訳機能で全然解読できます。

**③ mysql.server startで起動**
(参照記事ではコマンドプロンプトではなく「ターミナル」と言っているので操作環境はMac…？)

コマンドプロンプトにて、``mysql.server start``のコマンドを入力します。
```:コマンドプロンプト
> mysql.server start
  Starting MySQL
  SUCCESS! 
```
と出れば起動成功。
>参照 : [【MySQL入門】MySQLの起動・停止・再起動　基礎的なコマンドまとめ](https://style.potepan.com/articles/18698.html)

<br>

## あとがき
最初は``mysql -u user_name -p``のコマンドが違うのか！？とか、user_nameの名前が違うのか！？などてんやわんやでした。
エラーコードをコピペで検索して、「あぁ、アプリが起動してないのね」とわかり、「なーんだ起動させればいいんだ！じゃあすぐ終わるじゃん！」と思っていたのが運の尽き。
MySQLを起動させるだけで一日が終了してしまいました(´・ω・)


上記の方法の①以外は、コマンドが受け付けてくれなかったり、サーバーが応答してくれなかったりでだめだったのですが、私の方法でダメだった方の、誰かに当てはまればと思います。