LoginSignup
0
0

More than 3 years have passed since last update.

WSL1でMySQL5.7をインストール

Last updated at Posted at 2020-12-09

きっかけ等

1度苦労してインストールしても、依存関係でアンインストールしたりなど、そのときの手順を忘れたころにまたインストールしなきゃいけないときが来るのでそのときのための備忘録。エラーは人により出なかったり違う状況になったりするかもしれませんが、同じ・似た状況で悩んでいる方の参考になれば幸いです。また、その後のよくある手続きの手順も書いておきます。

環境

$ cat /etc/issue
Ubuntu 18.04.5 LTS \n \l
  • WSL1 (Windows10, Ubuntu18.04)
  • これはアンインストール後の2度目のインストール時に書いていますが、前のmysql-server, mysql-client, mysql-commonは"apt remove --purge"により削除しています。また、"apt autoremove --purge"と"apt autoclean"も実行し、

インストール

$ sudo apt install mysql-server mysql-client

service startするがfailする問題

$ sudo service mysql start
 * Starting MySQL database server mysqld                                                                                                      [fail]

ログを見ると、すでにmysqlのプロセスがあると言われる

$ sudo cat /var/log/mysql/error.log
2021-03-10T07:09:14.494776Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2021-03-10T07:09:14.623660Z mysqld_safe A mysqld process already exists

topで確認

$ top
  153 mysql     20   0   10668    776    744 S   0.0  0.0   0:00.06 mysqld_safe
  560 mysql     20   0 2332320 197076  27624 S   0.0  1.2   0:35.09 mysqld

killしてみた。でも実はできてなかった。

$ sudo kill 153
$ sudo kill 560
$ sudo service mysql start
 * Starting MySQL database server mysqld                                                                                                      [fail]
$ top
  153 mysql     20   0   10668    776    744 S   0.0  0.0   0:00.06 mysqld_safe
  560 mysql     20   0 2332320 197076  27624 S   0.0  1.2   0:35.09 mysqld

既存のmysqldプロセスを強制kill

$ sudo kill -9 153
$ sudo kill -9 560

参考:https://www.cyberciti.biz/faq/how-force-kill-process-linux/

起動成功

$ sudo service mysql start
 * Starting MySQL database server mysqld                                                                                                      [ OK ]

特に初回インストールのときはMariaDBを入れようとしたこともあり10時間くらい格闘したが、今になって振り返ると本当の問題はこれだけだったようで。。

rootパスワードを再設定する

少し適当な文献を見つけるのに手間取りましたが、結局、このページに沿うのが良さそう。これで、"mysql -u root -p"で入れるようになりました。

$ sudo mysql
mysql> update mysql.user set plugin='mysql_native_password' where user='root';
mysql> update mysql.user set authentication_string='password' where user='root';
mysql> flush privileges;

文字コード(utf8, utf8mb4)の設定

to be written

mysql2 (gem) のインストール

こちら

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0