MySQLサンドボックス

定期的に(時には非常に頻繁に)いくつかのmysqlサーバーを上げるために、テストまたは他の目的が必要であり、レプリケーションを使用して、このプロセスまたはそのプロセスをロールバックまたはデバッグすることができます。
この身体の動き自体を自動化することは、必要な頻度ではないため、あまり意味がありません。

インターネットでは、そのような既製のスクリプトが見つかりました。 myslqsandbox-筋肉質の砂場と呼ばれます。 MySQLバージョン3.23から6.0で動作します。 GPLで配布されます。

意味は簡単です。
1. MySQL-Sandbox-3.0.17.tar.gzをダウンロードして解凍し、 tar -zxvf MySQL-Sandbox-3.0.17.tar.gz
cd MySQL-Sandbox-3.0.17
をインストールしtar -zxvf MySQL-Sandbox-3.0.17.tar.gz
cd MySQL-Sandbox-3.0.17
tar -zxvf MySQL-Sandbox-3.0.17.tar.gz
cd MySQL-Sandbox-3.0.17

あなたがルートの場合、
export SANDBOX_AS_ROOT=1
perl Makefile.PL
make
make test
make install


普通の/普通でない人間の場合、

export PATH=$HOME/usr/local/bin:$PATH
export PERL5LIB=$HOME/usr/local/lib/perl5/site_perl/5.8.8
perl Makefile.PL PREFIX=$HOME/usr/local
make
make test
make install


同時に、使用しているLinuxディストリビューションに応じて、PERL5LIBが異なる場合があることに注意してください。

現在、2つのオプションがあります。

オプション番号1。
mysqlがすでにインストールされている場合は、コマンドを使用してローカルサンドボックスを作成できます。

make_sandbox_from_installed XXXX

XXXXはインストールされているmysqlのバージョンです。

オプション番号2。
MySQL- <something-there-suitable> .tar.gzをダウンロードして、そこからサンドボックスを作成します。

cd ~
wget 127.0.0.1/mysql-5.5.15-linux2.6-x86_64.tar.gz
make_sandbox mysql-5.5.15-linux2.6-x86_64.tar.gz


サンドボックス~/msb_X_X_XXを使用する準備ができました。
#netstat -lna
unix 2 [ ACC ] STREAM LISTENING 68883 /tmp/mysql_sandbox5515.sock
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN

必要なもの(構成、コマンド)はすべてホームディレクトリ内にあり、簡単に削除することで削除されます。
より興味深いサンドボックスコマンドを使用できます。 たとえば、コマンド

make_replication_sandbox ~/mysql-5.5.15-linux2.6-x86_64.tar.gz
1つのマスターと2つのスレーブベースから新しいインスタンスを作成します。

make_replication_sandbox --master_master ~/mysql-5.5.15-linux2.6-x86_64.tar.gz
2つのサーバーを持つマスターレプリカマスターを作成します。

make_replication_sandbox --circular=4 ~/mysql-5.5.15-linux2.6-x86_64.tar.gz
3つのスレーブサーバーを使用した「循環」レプリケーションの作成(バージョン5.1以降のmysqlで使用可能)

各操作の後、既製のインスタンスが自動的に開始されて動作する準備ができ、ソケット/ポートがリッスンされます。 サンドボックスを作成すると、2人のユーザーが自動的に作成されます
  + ----------------- + ------------- + ----------------- -------------- +
  | ユーザー名| パスワード| 特権|
  + ----------------- + ------------- + ----------------- -------------- +
  |  root @ localhost |  msandbox | すべての*。*付与オプション付き|
  |  msandbox @%|  msandbox | すべて*。* |
  + ----------------- + ------------- + ----------------- -------------- + 


この記事は、そのような便利さの驚くべきツールの存在の事実を一般の人々と共有する試みです。
PS。 この説明は導入部にすぎないため、将来、このツールの説明を続ける準備ができています。

継続する。

Source: https://habr.com/ru/post/J126832/


All Articles