NodeJSプロジェクト用の新しい迷惑メールボックスを設定しています。データベースの場合、私はMySQLを使用します。私は必要なものすべてをインストールするためのプロビジョニングスクリプトをセットアップしました。ホストマシンからMySQLにアクセスすること(Sequel Proを使う)とは別にすごく機能します。私はそれが働いているが、私はバインドアドレスの行をコメントアウトするために/etc/mysql/my.cnf
ファイルを編集する必要があります。Vagrantのコマンドラインからmysql bind-addressを変更してください。
プロビジョニングスクリプトに追加できるように、コマンドラインでこれを行う必要はありますか?これが可能ならば、私がプロジェクトを共有している他の開発者はvagrant up
を実行するだけでよいでしょう。あなたが提供することができます任意の助け
#!/bin/bash
# Variables
DBHOST=localhost
DBNAME=vagrant
DBUSER=vagrant
DBPASSWD=test123
# Update packages
apt-get update
# Install MySQL
debconf-set-selections <<< "mysql-server mysql-server/root_password password $DBPASSWD"
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $DBPASSWD"
apt-get install -y mysql-server
mysql -uroot -p$DBPASSWD -e "CREATE DATABASE $DBNAME"
mysql -uroot -p$DBPASSWD -e "CREATE USER '$DBUSER'@'localhost' IDENTIFIED BY '$DBPASSWD'"
mysql -uroot -p$DBPASSWD -e "GRANT ALL PRIVILEGES ON $DBNAME.* TO '$DBUSER'@'localhost'"
mysql -uroot -p$DBPASSWD -e "CREATE USER '$DBUSER'@'10.0.2.2' IDENTIFIED BY '$DBPASSWD'"
mysql -uroot -p$DBPASSWD -e "GRANT ALL PRIVILEGES ON $DBNAME.* TO '$DBUSER'@'10.0.2.2'"
echo "Installed MySQL"
ありがとう:
以下はMySQLのセットアップに関連する私のスクリプトの一部です。
なぜバインドされたアドレスを変更しようとしていますか?バインドアドレスは、サービスがMysqlトラフィックをリスンするローカルインターフェイスです。あなたが複数のnicsを持っていて、特定のローカルインターフェースだけを聞きたいのでなければ、0.0.0.0(すべてのデバイス)でなければなりません。 –
こんにちはSteve、デフォルトのバインドアドレスは127.0.0.1で、私のホストマシンからの接続が停止します。いくつかのグーグルを行うことから、私はVMの外から接続できるように、これを0.0.0.0(またはコメントアウト)に変更する必要があることがわかりました。もしデフォルトが0.0.0.0だったら私はこれをする必要はありません(あなたの言うように)が、そうではありません。あるいは、インストール手順でデフォルト0.0.0.0にする方法はありますか? –
準備された入力でmysqlセキュアスクリプトを起動し、rootを使ってmysqlをオフにする必要があります。あなたのビルドスクリプトの先生とGL!おかげさまで –