xolyu.mariadb
mariadb
MariaDBデータベースサーバーをインストールし、設定します。データベースとユーザーを作成します。
要件
システムパッケージ
python3-mysqldb- AnsibleのMySQLモジュールmysql_userとmysql_db用。パッケージの自動確認については、変数
php_ensure_requirementsを参照してください。
依存関係
Community.Mysqlコレクション
ロール変数
mariadb_ensure_requirements
要件セクションにリストされたパッケージをインストールするための設定。
タイプ: bool
デフォルト:nomariadb_enabled_on_startup
MariaDBサービスを有効にするかどうかを定義します。
タイプ: bool
デフォルト:yesmariadb_secure_installation
MariaDBの「secure_installation」スクリプトと同様に、「secure installation」セクションを実行するかどうかを定義します。
選択肢:on_install,always,never
デフォルト:on_installmariadb_config_style
設定スタイルを定義します。single_cnfはグローバルなmariadb.cnfファイルのみを設定し、インクルードファイルには触れません。一方、included_cnfはmariadb.conf.dディレクトリの存在を保証し、最小限のmariadb.cnfの設定に加えてインクルードファイルを管理します。noneの場合は設定が行われません。
選択肢:single_cnf,included_cnf,none
デフォルト:single_cnfmariadb_root_username
MariaDBのルートユーザーのユーザー名。通常はrootであるべきです。
タイプ: str
デフォルト:rootmariadb_root_password
MariaDBのルートユーザーのパスワード。
タイプ: str
デフォルト: 未定義mariadb_root_auth_by_unix_socket
ルートユーザーに対してunix_socket認証プラグインが有効にされるかどうかを定義します。
タイプ: bool
デフォルト:yesmariadb_root_home
ルートユーザーのホームディレクトリ。この値は、unix_socket認証なしでルートパスワードが使用される場合にのみ使用されるため、.my.cnfファイルに認証ユーザー名とパスワードが保存されます。
タイプ: str
デフォルト:/rootmariadb_root_auth_update
ルートの認証方法は、インストール時またはこの変数がtrueに設定されているときに設定されます。
パスワードによる認証の場合、これはインストール中に一度だけ存在すればよく、その後は不要です。また、変更があった場合のみ必要です。
タイプ: bool
デフォルト:nomariadb_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_3mariadb_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.1mariadb_datadir
データディレクトリとその権限を確保するために使用されます。
デフォルトから変更する場合、設定に追加する必要があります(例:datadir: $var(mariadb_datadir))。
タイプ: str
デフォルト:/var/lib/mysqlmariadb_encoding
MariaDB設定のエンコーディング設定。
デフォルト設定で$var(...)値が使用されます。
タイプ: str
デフォルト:utf8mb4mariadb_collation
MariaDB設定の照合設定。
デフォルト設定で$var(...)値が使用されます。
タイプ: str
デフォルト:utf8mb4_general_cimariadb_databases
説明
タイプ: List of Dicts
デフォルト:[]mariadb_databases: - name: example encoding: utf8 collation: utf8_general_ci state: present # present, absentmariadb_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.
