WSL環境でMySQL8.0が動かない場合の対処

WSL環境でMySQL8.0を動かすのみ大ハマりしたので対処した方法を残しておく。

起きた問題とその解決

複数の問題が発生していた。

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

ログインしようとするとmysqld.sockがないと怒られる。
これはmysqlをスタートしていないから。mysqlをスタートさせる必要がある。

mysql: unrecognized service

んじゃ起動するかと

service mysql start

をするとmysql: unrecognized serviceとなって起動できない。

エラーログをみると下記のエラーが目に付く。

[ERROR] InnoDB: Linux Native AIO interface is not supported on this platform. Please check your OS documentation and install appropriate binary of InnoDB.

これでぐぐると
https://github.com/Microsoft/WSL/issues/3631
にヒットしてIssueの通りMySQL8を入れなおすことでservice mysql startでのエラーは解消。
しかし起動に失敗する。

MySQL5は動くのにMySQL8では動かず、ハマる。。。
念のためMySQL5のログを見てみると同じエラーが出ている。ということは原因はこいつではなかった。

[ERROR] [MY-000067] [Server] unknown variable ‘log-syslog=1’

MySQL8のときのerror logの下のほうには別のエラーがでていた。

[ERROR] [MY-000067] [Server] unknown variable 'log-syslog=1'.
[ERROR] [MY-010119] [Server] Aborting

Abortingとか出ているしめっちゃ怪しい。最終的にはこれを直したらMySQLの起動が成功。
修正は
/etc/mysql/mysql.conf.d/mysqld_safe_syslog.cnf

[mysqld_safe]
syslog

[mysqld_safe]
#syslog

とsyslogを無効にしてあげればOK。

解決までにめっちゃ時間かかってしまった。。。。

人気記事

まだデータがありません。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

seventeen − 12 =