robertdebock.mysql

Ansibleロールmysql

システムにmysqlをインストールし、設定します。

GitHub GitLab ダウンロード バージョン
github gitlab downloads Version

例のプレイブック

この例はmolecule/default/converge.ymlからのもので、各プッシュ、プルリクエスト、およびリリース時にテストされています。

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: robertdebock.mysql
      mysql_port: 3307
      mysql_databases:
        - name: my_db
          encoding: utf8
          collation: utf8_bin
      mysql_users:
        - name: my_user
          password: my_pass
          priv: "my_db.*:ALL"
          update_password: on_create

マシンを準備する必要があります。CIではmolecule/default/prepare.ymlを使って行います:

---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: robertdebock.bootstrap

これらのロールを使う方法については、完全な説明と例も参照してください。

ロールの変数

変数のデフォルト値はdefaults/main.ymlに設定されています:

---
# mysqlのデフォルトファイル

# mysqlがバインドするアドレス。
mysql_bind_address: "127.0.0.1"

# リッスンするポート。
mysql_port: 3306

# rootユーザーのパスワード。my.cnfにも保存されます。
mysql_root_password: "s3Cur31t4."

# バッファプールのサイズ。
mysql_innodb_buffer_pool_size: 1G

# ioキャパシティ。
mysql_innodb_io_capacity: 4000

# ここにmysql(d)のオプションを設定できます。
# これはリストなので、他のリストとマージするのが難しいです。
# つまり、リスト全体を再定義し、自分のオプションを追加する必要があります。
mysql_configuration_options:
  - option: bind-address
    section: mysqld
    value: "{{ mysql_bind_address }}"
  - option: port
    section: mysqld
    value: "{{ mysql_port }}"
  - option: socket
    section: mysqld
    value: "{{ mysql_socket }}"
  - section: mysqld
    option: innodb_buffer_pool_size
    value: "{{ mysql_innodb_buffer_pool_size }}"
  - section: mysqld
    option: innodb_io_capacity
    value: "{{ mysql_innodb_io_capacity }}"
  - section: mysqld
    option: log-bin-trust-function-creators
    value: "1"

要件

使用するロールの状態

以下のロールがシステムを準備するために使用されます。別の方法でシステムを準備することもできます。

要件 GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab

コンテキスト

このロールは多くの互換性のあるロールの一部です。詳細については、これらのロールのドキュメントを参照してください。

関連ロールの概要はこちらです: 依存関係

互換性

このロールは、以下のコンテナイメージでテストされています:

コンテナ タグ
Debian bullseye
EL 9
Fedora すべて
Ubuntu noble, jammy

Ansibleの最小バージョンは2.12で、以下のテストが行われました:

  • 前のバージョン。
  • 現在のバージョン。
  • 開発バージョン。

問題が見つかった場合は、GitHubに登録してください。

ライセンス

Apache-2.0

著者情報

robertdebock

スポンサーシップをご検討ください。

プロジェクトについて

Install and configure mysql on your system.

インストール
ansible-galaxy install robertdebock.mysql
ライセンス
apache-2.0
ダウンロード
284.9k
所有者
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.