ansibleでCentOS8 にmariadbインストールし、rootパスワードを変更しようとしたらはまるの巻
ちょっとphp8も出たし、CentOSも8への移行が進むだろうしとうことで、
最新のテスト環境つくれるようにしとこうとansibleのスクリプトをいじってたところ、
いままで普通にできてた、mariadbのインストール時にパスワードを変更するのにハマった。
fatal: [php8]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, \"Access denied for user 'root'@'localhost'\")"}
root でログインできないよ!って言われる。
あれやこれや試した後、
CentOS8で、ansibleが使うライブラリが変更になっていた件を思い出した。
もともと、MySQL-python をつかっていたのだけど、CentOS8からはパッケージがなく、
python3-PyMySQL 変更していたのだった。
すると、こういう記事があり、どうもPyMySQLだとsocket接続じゃなく、TCP接続を優先するとのことで、 login_unix_socket を使ってみてという記述があった。
えー、と思いつつ設定したら通った。
普段からやってないと、色々とハマるなーとおもった暑い日でした。