xolyu.mariadb
mariadb
MariaDBデータベースサーバーをインストールし、設定します。データベースとユーザーを作成します。
要件
システムパッケージ
python3-mysqldb
- AnsibleのMySQLモジュールmysql_user
とmysql_db
用。パッケージの自動確認については、変数
php_ensure_requirements
を参照してください。
依存関係
Community.Mysql
コレクション
ロール変数
mariadb_ensure_requirements
要件セクションにリストされたパッケージをインストールするための設定。
タイプ: bool
デフォルト:no
mariadb_enabled_on_startup
MariaDBサービスを有効にするかどうかを定義します。
タイプ: bool
デフォルト:yes
mariadb_secure_installation
MariaDBの「secure_installation」スクリプトと同様に、「secure installation」セクションを実行するかどうかを定義します。
選択肢:on_install
,always
,never
デフォルト:on_install
mariadb_config_style
設定スタイルを定義します。single_cnf
はグローバルなmariadb.cnf
ファイルのみを設定し、インクルードファイルには触れません。一方、included_cnf
はmariadb.conf.d
ディレクトリの存在を保証し、最小限のmariadb.cnf
の設定に加えてインクルードファイルを管理します。none
の場合は設定が行われません。
選択肢:single_cnf
,included_cnf
,none
デフォルト:single_cnf
mariadb_root_username
MariaDBのルートユーザーのユーザー名。通常はroot
であるべきです。
タイプ: str
デフォルト:root
mariadb_root_password
MariaDBのルートユーザーのパスワード。
タイプ: str
デフォルト: 未定義mariadb_root_auth_by_unix_socket
ルートユーザーに対してunix_socket
認証プラグインが有効にされるかどうかを定義します。
タイプ: bool
デフォルト:yes
mariadb_root_home
ルートユーザーのホームディレクトリ。この値は、unix_socket
認証なしでルートパスワードが使用される場合にのみ使用されるため、.my.cnf
ファイルに認証ユーザー名とパスワードが保存されます。
タイプ: str
デフォルト:/root
mariadb_root_auth_update
ルートの認証方法は、インストール時またはこの変数がtrue
に設定されているときに設定されます。
パスワードによる認証の場合、これはインストール中に一度だけ存在すればよく、その後は不要です。また、変更があった場合のみ必要です。
タイプ: bool
デフォルト:no
mariadb_admin_username
ルートユーザー以外の管理ユーザーのユーザー名。
これはAnsibleの管理ユーザーとなり、Ansibleがルートとして行動せずにデータベースに管理変更を加えることを可能にします。
タイプ: str
デフォルト: 未定義mariadb_admin_password
管理ユーザーのパスワード。
タイプ: str
デフォルト: 未定義mariadb_admin_sysuser
データベースを管理者として使用するためのシステムユーザー名。
タイプ: str
デフォルト: 未定義mariadb_admin_home
システムユーザーのホームディレクトリ。データベース管理者ユーザーの認証情報が含まれた.my.cnf
ファイルがこのディレクトリに保存されます。
タイプ: str
デフォルト: 未定義mariadb_config
MariaDBの設定を示し、included_cnf
の場合は個別のファイルに整理されます。
タイプ: Dict of Dict of Dict
デフォルト: デフォルト値はdefaults/main.ymlを参照mariadb_config: {cnf_file}: $state: present # present, disabled, absent {section}: {option}: {value}
cnf_file
:mariadb.conf.d
ディレクトリ内のファイル名(拡張子なし) (変数mariadb_configs_dir
を参照).
特別な名前:global_cnf
は、included_cnf
設定スタイルの場合にグローバルなmariadb.cnfファイルの構成に使用されます。single_cnf
は、single_cnf
設定スタイルの場合に単一(グローバル)mariadb.cnfファイルの基礎として使用されます。
section
: MariaDBの設定ファイル内のINIセクション。
特別な名前:$state
は設定ファイルの状態。デフォルトはpresent
で、選択肢にdisabled
とabsent
があります。$header
はcnfファイル内のすべてのセクションの上部に印刷されますが、自動的にコメントに変換されるわけではありません。
option
: セクション内のオプション。value
: オプションの値。
特別な値:- 値がリストの場合、そのオプションはリストの各項目について繰り返されます。
$set
または空の文字列(長さ == 0)は、値なしでオプションを設定します。$unset
は、オプションがcnfファイルに存在しないことを意味します。$var(VAR_NAME)
は、評価時にVAR_NAME
変数のルックアップが行われます。
mariadb_config_extra_1
,mariadb_config_extra_2
,mariadb_config_extra_3
mariadb_config
とまったく同じです。これらの変数は、すべてを完全に再定義せずに設定を追加で充実させることを可能にします。追加の変数は、以前に定義された値を上書きし、高い番号の変数が低い番号の変数に優先されます。
事前に定義された値を削除する場合は、特別な値$unset
を使用できます。
デフォルト: 未定義mariadb_packages
MariaDBサーバーのためにインストールされるパッケージのリスト。
タイプ: List of str
デフォルト: OSに依存、デフォルトはvars/[OS-family].ymlを参照mariadb_config_file
グローバルなmariadb.cnfファイルのパス。
タイプ: str
デフォルト: OSに依存、デフォルトはvars/[OS-family].ymlを参照mariadb_configs_dir
cnfファイルのためのインクルードディレクトリのパス。
タイプ: str
デフォルト: OSに依存、デフォルトはvars/[OS-family].ymlを参照mariadb_socket
MariaDBサーバーインスタンスのソケットファイルのパス。
タイプ: str
デフォルト: OSに依存、デフォルトはvars/[OS-family].ymlを参照mariadb_pid_file
MariaDBサーバーインスタンスのpidファイルのパス。
タイプ: str
デフォルト: OSに依存、デフォルトはvars/[OS-family].ymlを参照mariadb_bind_address
MariaDBサーバーのバインドアドレス。
デフォルト設定で$var(...)
値が使用されます。
タイプ: str
デフォルト:127.0.0.1
mariadb_datadir
データディレクトリとその権限を確保するために使用されます。
デフォルトから変更する場合、設定に追加する必要があります(例:datadir: $var(mariadb_datadir)
)。
タイプ: str
デフォルト:/var/lib/mysql
mariadb_encoding
MariaDB設定のエンコーディング設定。
デフォルト設定で$var(...)
値が使用されます。
タイプ: str
デフォルト:utf8mb4
mariadb_collation
MariaDB設定の照合設定。
デフォルト設定で$var(...)
値が使用されます。
タイプ: str
デフォルト:utf8mb4_general_ci
mariadb_databases
説明
タイプ: List of Dicts
デフォルト:[]
mariadb_databases: - name: example encoding: utf8 collation: utf8_general_ci state: present # present, absent
mariadb_users
説明
タイプ: List of Dicts
デフォルト:[]
mariadb_users: - name: example host: 'localhost' password: TOP_secret priv: '*.*:USAGE' state: present # present, absent append_privs: no # no, yes encrypted: no # no, yes
例プレイブック
このロールを使用して構成するプレイブックの例。
ライセンス
GNU一般公衆ライセンスv3.0
作者情報
Xolyu.