supertarto.mariadb
Ansible MariaDB
使用 Ansible 安装和配置 MariaDB
需求
无
测试平台
- Debian 10 (Buster)
- Debian 11 (Bullseye)
- Debian 12 (Bookworm)
角色变量
这些变量让您定义是否想要使用转储脚本、覆盖全局 my.cnf 文件或更新 root 密码。
mariadb_use_dump_script: true
mariadb_overwrite_global_mycnf: true
mariadb_root_password_update: false
您可以在这里配置 MariaDB 使用的不同路径。dump_path 和 dump_path_script 用于存储转储和转储脚本。您必须将这些转储备份到外部位置。转储脚本会通过 cron 任务自动启动。
mariadb_dump_path: "/var/local/dump_sql"
mariadb_log_path: "/var/log/mariadb"
mariadb_dump_path_script: "/var/local/scripts"
mariadb_datadir: /var/lib/mariadb
mariadb_root_home: "/root"
MariaDB 的 root 用户名和密码。您必须更改它!
mariadb_root_username: "root"
mariadb_root_password: "defaultpass"
数据库创建。您可以创建多个数据库。排序规则和编码字段是可选的。如果未设置,将使用默认值 utf8_general_ci 和 utf8。
mariadb_databases: []
# 示例:
# - name: database1
# collation: utf8_general_ci
# encoding: utf8
用户创建。主机和权限字段是可选的。如果未设置,将使用默认值 localhost 和 *.*:USAGE。
mariadb_users: []
# 示例:
# - name: username
# host: localhost
# password: sqlpassword
# priv: "*.*:SELECT,UPDATE"
如果您想使用转储脚本,您必须设置这些值,在 mariadb_users 中创建用户,并将权限定义为 *.*:SELECT,LOCK TABLES。
mariadb_dump_user: []
mariadb_dump_pass: []
MariaDB 使用的端口和绑定地址。
mariadb_port: "3306"
mariadb_bind_address: '127.0.0.1'
日志文件的定义。基于 mariadb_log_path 的值。
mariadb_log: "{{ mariadb_log_path }}/mariadb.log"
mariadb_log_error: "{{ mariadb_log_path }}/mariadb.err"
默认字符集和排序规则。
mariadb_character_set_server: "utf8"
mariadb_collation_server: "utf8_general_ci"
示例
- hosts: somehost
roles:
- role: supertarto.mariadb
vars:
mariadb_use_dump_script: true
mariadb_databases:
- name: database1
collation: utf8_general_ci
encoding: utf8
mariadb_users: []
- name: username
host: localhost
password: sqlpassword
priv: "database1.*:SELECT,UPDATE"
- name: "{{ mariadb_dump_user }}"
host: localhost
password: "{{ mariadb_dump_pass }}"
priv: "*.*:SELECT,LOCK TABLES"
mariadb_dump_user: "dumpuser"
mariadb_dump_pass: "Dumppassword"
安装
ansible-galaxy install supertarto.mariadb
许可证
GPL V3.0