MySQLをWindowsにインストールする手順です。
インストーラーでインストールします。
動作環境
- Windows 11
- MySQL 8.1
MySQLダウンロード
以下のサイトからWindows版の「mysql-8.1.0-winx64.msi」をダウンロードします。
https://dev.mysql.com/downloads/mysql/
MySQLインストール
ダウンロードした「mysql-8.1.0-winx64.msi」を実行します。
画面にそってインストールを進めていきます。
インストールが終了します、「Run MySQL Configurator」にチェックを入れると初期設定に進みます。
MySQL初期設定
「MySQL Configurator」で初期設定を行います。
ポートやrootのパスワードなどの設定を行います。
パスワード以外ほとんどデフォルトで問題ありません。
全ての設定が完了したら「Execute」で実行します。
これで完了です。「Finish」で閉じることができます。
接続確認
MySQLのインストールディレクトリのbinへ移動します。
mysqlコマンドでログインします。
パスワードは初期設定時に設定したrootのパスワードです。
C:\Program Files\MySQL\MySQL Server 8.1\bin>mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.1.0 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.
mysql> SELECT version();
+-----------+
| version() |
+-----------+
| 8.1.0 |
+-----------+
1 row in set (0.00 sec)
おまけ
「MySQL Configurator」を使用しないで初期設定。
GUIツールの「MySQL Configurator」を利用したほうが便利です。
windowsサービスへの追加(my.cnf指定)
コマンドプロンプトを管理者権限で起動する必要あり。
mysqld --install MySQL8.1 --defaults-file=C:\my.cnf
windowsサービスから削除
コマンドプロンプトを管理者権限で起動する必要あり。
mysqld --remove
MySQLの初期化
Dataフォルダを空にしないと初期化できない。
mysqld.exe --initialize --user=mysql --basedir="C:\Program Files\MySQL\MySQL Server 8.1" --datadir="C:\Program Files\MySQL\MySQL Server 8.1\Data"
MySQLのmy.iniを指定して初期化
・my.ini
[mysqld]
basedir=C:\Program Files\MySQL\MySQL Server 8.1
datadir=C:\Program Files\MySQL\MySQL Server 8.1\data
mysqld.exe --defaults-file="C:\my.ini" --initialize --user=mysql
rootパスワードの初期化
手動で初期化するとrootパスワードはData/[filename].errに出力される。
2023-08-17T04:36:20.414253Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: prL7l.wY?c54
mysqlにrootでログイン後に初期化しないと他の操作ができない。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';