Ansible による MariaDB 10 のデータベース・ユーザー設定



Ansible の playbook を使って MariaDB 10.5 をインストールして MariaDB のデータベースとユーザーを作成する方法です。

Alma Linux 10.4 で確認しました。Alma Linux の AppStream からは MariaDB 10.5 をインストールできます。

データベースの作成

MariaDB 10.4 からはデフォルトでローカルからアクセスする場合の root パスワードは要求されていません。そこで playbook にもパスワードの記載をしないでもアクセスできると思い、何も記載しないでやってみます。

しかし、実行するとエラーになります。

unable to find /root/.my.cnf. Exception message: (1698, Access denied for user) エラー

回避策として、login_host, login_user, login_password を追加してみます。

ちなみに mysql_root_password は空に設定してあります。しかしこれでもうまくいきません。

そもそもローカルアクセスとはいっても、パスワードが要求されないのは socket 接続の場合です。(これはサーバーの root 権限を持っているのに root パスワードを求めることがセキュリティ的に無意味という考えからデフォルトでこのような動作になっているようです。もちろんパスワードを設定することもできます。)

そのためソケット接続したいので login_host ではなく、login_unix_socket を使えば良さそうです。

これでうまくいきました。

ユーザーの作成

こちらも同様に login_unix_socket を使った設定をします。

root のパスワード設定

最後に root のパスワードを設定するのも Ansible でやってみます。
db_root_password に新しいパスワード、mysql_root_password は古いパスワード(空)です。

ITエンジニア募集中!

キュアコード株式会社はITエンジニアを募集しております。少人数の職場なので、上流・下流やサーバー・クライアント対応の垣根なく、あなたの強みを活かしながら いろいろなことにチャレンジ可能です。エンジニアとしての未経験の方、経験が少ない方も歓迎しています。

下記よりITエンジニア募集の採用情報をご覧いただけます。


コメントを残す

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

CAPTCHA