MySQLは公式サイトでインストーラが配布されてるので誰でも簡単にインストールできますが、
会社のPCによってはインストーラが使えないシーンは多々あるでしょう(ウイルスソフトに引っかかったりとか)
その点zipならアンインストールはファイルは削除だけで済むし、設定ファイルをイジったりカスマイズしやすくて便利、なので今回zipインストールに挑戦しました。
意外と躓いたので、僕自身の忘備録とインストール出来なくて困っている方のために手順を残しておきます。
ちなみにコマンドプロンプトの基礎が分かっている人向けに書いています。
最近勉強始めました〜コマンド?環境変数?ひゃっはー!!って人には厳しいかもしれません。
※この記事は2021年3月時点の物なので、あなたが参考にする際には古くなっている可能性あり。
上手くいかない時は公式サイトのドキュメントを参考にどうぞ
https://dev.mysql.com/doc/refman/8.0/en/postinstallation.html
MySQLをダウンロード
②「DOWNLOADS」をクリック
③最下部の「MySQL Community (GPL) Downloads » 」をクリック
④「MySQL Community Server」を選択
⑤「Select Operating System:」が「Microsoft WIndows」であることを確認
⑥Windows (x86, 64-bit), ZIP Archive ダウンロード
No thanks, just start my download. をクリック
⑦MySQLをインストールするフォルダを作成
C:\mysql
⑧C:\mysql にzipの中身を展開
MySQLの設定ファイルを作成
①C:\mysql直下に、「data」「logs」「temp」「mydata」フォルダを作成
②C:\mysql直下に、「my.ini」を作成
設定によっては拡張子が.txtで保存されるので、その場合
「表示」→「ファイル名拡張子」→「my.ini.txt」を「my.ini」に修正
③「my.ini」に、以下を記述
[mysqld]
# set basedir to your installation path
basedir=C:\mysql
# set datadir to the location of your data directory
datadir=C:\mysql\data
[client]
port=3306
socket=/temp/mysql.sock
[mysqld]
port=3306
socket=/temp/mysql.sock
key_buffer_size=16M
max_allowed_packet=8M
[mysqldump]
quick
[client]
# The following password will be sent to all standard MySQL clients
password="12345"
[mysql]
no-auto-rehash
connect_timeout=2
[mysqlhotcopy]
interactive-timeout
basedir=C:\mysql
datadir=C:\mysql\data
は、自分の環境に合わせて変更
MYSQLの起動・ログイン
※ここから難易度上がります。
よくわからないときはドキュメントをちゃんと読んでね
https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization.html
①コマンドプロンプトを管理者権限でログイン
②MySQL初期化
C:\WINDOWS\system32>"C:\mysql\bin\mysqld" --defaults-file="C:\mysql\my.ini" --initialize --user=mysql
③MySQLを起動
C:\WINDOWS\system32>"C:\mysql\bin\mysqld" --defaults-file="C:\mysql\my.ini" --initialize --console
2021-03-20T13:00:54.324844Z 0 [System] [MY-013169] [Server] C:\mysql\bin\mysqld (mysqld 8.0.23) initializing of server in progress as process 17748
2021-03-20T13:00:54.338072Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-03-20T13:00:55.612545Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-03-20T13:00:57.754964Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: *一時的なパスワードが表示
④パスを通して「mysql」でログイン可能にする
1.WIndowsボタン+i
2.環境変数を編集
3.変数「Path」を選択し、「編集」
4.「新規」
5.C:\mysql\bin を追加してOK(インストールしたmysqlディレクトリ\bin に設定する)
⑤mysqlでログインする
コマンドプロンプトを再起動
C:\WINDOWS\system32>mysql -u root -p
Enter password: 一時的なパスワードを入力
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.23
Copyright (c) 2000, 2021, 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>
ログインできました
⑤パスワードを変更
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'ここにパスワードを入力';
mysql> quit
C:\WINDOWS\system32>mysql -u root -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
パスワード変更できました
⑥Windowsサービスに登録し、自動起動をONにする
管理者権限でログインする
C:\WINDOWS\system32>"C:\mysql\bin\mysqld" --install MYSQL80 --defaults-file="C:\mysql\my.ini"
Service successfully installed.
PCを再起動して、ログインしてみる
C:\Users\yuuki>mysql -u root -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
自動起動設定が完了しました
※Windowsサービスに登録できてるか確認するには
1.Windows + xボタン
2.「コンピュータの管理」
3.「サービスとアプリケーション」
4. 「サービス」
5.「MYSQL80」が「実行中」「自動」になっていればOK
普段から慣れてないと大変
zipダウンロードについてぐぐると、インストーラでインストールするより簡単、なんて情報を見かけたけど、なわけあるかw明らかにこっちが難しいですね。管理者権限だのプロセスだの理解がない初心者はエラーで混乱するでしょう・・・。