Puppet は初めてインストールされた場合にのみ、mysql データディレクトリを変更します。

Puppet は初めてインストールされた場合にのみ、mysql データディレクトリを変更します。

Puppet を使用して、YUM リポジトリで Percona サーバーをインストールします。デフォルトの datadir ディレクトリは /mysql である必要があります。これは、既存のディレクトリ構造と一貫性を保つために必要です。

答え1

このように puppetlabs mysql モジュールを使用して、別のディレクトリに mysql をインストールできます。最初に percona をインストールする場合は、ディストリビューションの percona リポジトリを追加する必要があります。

ファイル mysql.pp

  class { '::mysql::server':
         service_name => 'mysql',
         package_name => 'Percona-Server-server-56',
         root_password    => 'mysqlpassword01',
         override_options => { 'mysqld' => { 'datadir' => '/mysql' } }
    }

ここで、このオプションでクラスがうまく動作するかどうかをテストします

puppet apply mysql.pp --environment testing

ps aux | grep datadir
root      4591  0.0  0.1 108168  1572 ?        S    03:29   0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql     4759  0.1  3.1 392104 32216 ?        Sl   03:29   0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock --port=3306

ls -l /mysql出力

[root@puppetserver ~]# ls -l /mysql/
total 20488
-rw-rw----. 1 mysql mysql 10485760 17 giu 03:29 ibdata1
-rw-rw----. 1 mysql mysql  5242880 17 giu 03:29 ib_logfile0
-rw-rw----. 1 mysql mysql  5242880 17 giu 03:29 ib_logfile1
drwx------. 2 mysql root      4096 17 giu 03:29 mysql
drwx------. 2 mysql root      4096 17 giu 03:29 test

とにかく、ディレクトリ /mysql が存在する場合、mysql インストール スクリプトは何も削除しません。

関連情報