web-dev-qa-db-ja.com

mysql-serverをvagrantにインストールするbootstrapシェルスクリプト(セットアップをスキップする方法は?)

Vagrant Ubuntu 12.04 LTS仮想マシンにmysql-serverをインストールしようとしました。そうすると、セットアップが自動的に開始されます。これはVagrantの出力で確認できます。

必須ではありませんが、MySQL管理「root」ユーザーのパスワード││を設定することを強くお勧めします。││││このフィールドを空白のままにすると、パスワードは変更されません。││││の新しいパスワードMySQLの「ルート」ユーザー

その後、出力テキストはhaywire — ± ├⎺ ⎼␊⎻┌▒␌␊ ┌␋␉⎽─┌␋├␊3-0 3.7.9-2┤␉┤┼├┤1 (┤⎽␋┼± ... —しかし、かなり長く、緑と赤の色でいっぱいなので、残りのインストールは完了していると思います。

しかし、私はインストールの欠如を確認できます:

Sudo apt-get install --just-print mysql-server-5.5 
...
The following NEW packages will be installed:
  mysql-server-5.5

シェルスクリプトを通じて正しい信号を送信してMYSQLサーバーを構成するにはどうすればよいですか?または、できない場合は、パッケージのインストール中に、構成の自動起動を停止したり、一度起動したセットアップを強制終了したりできますか?

17
Sam

MySQLルートパスワードをbootstrapファイルに設定するには、apt-get installを実行する前にdebconf-set-selectionsコマンドを追加します。

#!/usr/bin/env bash

debconf-set-selections <<< 'mysql-server mysql-server/root_password password MySuperPassword'
debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password MySuperPassword'
apt-get update
apt-get install -y mysql-server

これは、Debianベースのシステムで動作すると想定しています。私は毎日使用していますが、ボックスは完全に自動的に作成されます。

30
CCoffee

Puppet を調べてみてください。ソフトウェアを自動的にインストールおよび構成するのに最適です。 MySQLモジュール もありますが、まだ試していません。

3
l0b0