問題があるデータベースに関係なく、データベースを使用し続けることができますので、時には我々は、メインのmysqlを倍増する必要があります。トップ機関にリンクされている2つのデータベースが、どのサービスなどの問題、その他のサービスを継続することができます。もちろん、この記事では、メインの代理店の話にはないので、これは手の込んだされていません。
そのため私たちのコンピュータの限られた資源を、我々は処理のためにドッキングウィンドウのすべてのフォームを使用し続けます。
一部の学生がインストールされていない場合は私の最初のコンピュータはMacとドッキングウィンドウを設置した、あなたは、事前にインストールする必要があります。私たちは海外から引っ張って、サービスのイメージがすぐに完成する予定それ以外の場合は、ミラーのニーズを引き出しそう際、加速する国内のミラーサイトと相まって非常に遅いです。私は前にこの問題が発生し、その後、長い間置かドッキングウィンドウを入れて、国は今、非常に迅速にミラーを引き出し、ミラーサイトを加速するように構成されています。
私の中の基本のドッキングウィンドウに先立ちブログそれは言われている、過去に「チケット」することができ明確ではありません。
さて、ポイント、全員の準備ができてドッキングウィンドウ環境に取得してみましょう。私たちは、あなたが完全なミラーを引くものを自分自身の世話をすることができ、mysqlの5.7バージョンをミラーリング引っ張ります。
ドッキングウィンドウプルのmysql:5.7 ドッキングウィンドウの画像
次は、私たちは、同じ環境でマシンから主を聞かせて、ネットワーク環境を作成する必要があります。注文することができます。ドッカネットワークLSを独自のネットワークを作成したかを確認します。ここでは、mysqlの名前を持つネットワークを作成します。
ドッキングウィンドウのネットワークが--driver作成=ブリッジのmysql
レッツは、マスタースレーブマシンを始めます。
-pドッキングウィンドウの実行3366:3306 --network = mysqlの-h "mysql_master" --name mysql_master -e MYSQL_ROOT_PASSWORD =ルート-d mysqlの:5.7 ドッキングウィンドウの実行 -p 3367:3306 --network = mysqlの-h "mysql_slave" -名前mysql_slave -e MYSQL_ROOT_PASSWORD =ルート-d mysqlの:5.7
おそらく-p説明の上のパラメータが、マシンの内部ポートから露出され、これは外部のMySQLのマシンから接続することができます。ドッキングウィンドウの再起動mysql_master:-hホスト名、コンテナの先頭に指定した--name名前が、これはフォローアップなどでミラーを再起動するために使用することができます。-E時間がコンテナがそう-eで設定され、ルートMySQLのパスワードを指定する必要があるため、環境変数を作成するための指定、パスワードがrootに設定されています。-dこのデーモンそのデーモンの意味がバックグラウンドで実行されています。最後に、バージョン番号が起動し、mysqlのために使用される指定。
次はmysql_master機械に入力する必要があります。ドッキングウィンドウexecが-itがインタラクティブな方法で、マシンが実行されている入力するために使用され、最終的にはスクリプトタイプはbashを指定しています。
ドッキングウィンドウのexec -it mysql_master / binに/ bashの
MySQLはない、我々は必要なツールの内側に、非常にきれい行っているため、機械に入力した後。カーネルは、Debianのミラーリングされ、我々はvimの必要がとpingツールがインストールされています。私たちは、aptのソースとしてソース163を設定した後、最初にバックアップするすべてのソースファイルの、aptソースを変更する必要があります。もちろん、あなたが他のクラウドaptソースを検索することができる可能性があります。
CPの/etc/apt/sources.listの/ etc / aptの/ sources_init.list エコー " debファイルhttp://mirrors.163.com/debian/バスターメインnon-freeのcontribの debファイルのhttp:// mirrors.163.com/debian /バスター・アップデートの主non-freeのcontribの debファイルのhttp:// mirrors.163.com/debian/バスター-backportsの主な非フリーのcontrib DEBのhttp:// mirrors.163.com/debian-security/バスター/更新の主な不フリーのcontrib DEB -srcます。http:// mirrors.163.com/debian/バスターメイン非フリーのcontrib のdeb-srcののhttp:// mirrors.163.com/debian/バスター・アップデートの主非フリーのcontrib DEB-SRC http://mirrors.163.com/debian/バスター-backportsの主な非フリーのcontrib のdeb-srcののhttp:// mirrors.163.com/debian-security/バスター/更新の主な非フリーのcontrib」>の/ etc / aptの/ソース。リスト
我々は見てapt-getのを更新し、VIMとpingをインストールし、完成したツールがインストールされます行います。
APT- GET更新 のapt -get インストールのvim のapt -getがインストール iputils- のpingを
また、再実行してスレーブに必要がちな方法でこれらの更新プログラムのインストールツールは、私は、単一のステップを行っていませんよ。私たちは、「ピングmysql_slaveは、」ネットワークが重要な経由であることを示し、戻り値を持って実行し、pingコマンドをテストすることができます。私たちは、MySQLの設定ファイルを編集し続けます。
vimの/etc/mysql/mysql.conf.d/mysqld.cnf
我々は、MySQLが同期され、これはビンログによってオープンログ-binです、サーバーIDを設定し、ビンをログに記録します。マシンの各サーバ-idが異なる符号のマシンで同じではありません。
サーバ- のid = 1つの ログ -bin = mysqlのビン
保存した後、私たちは鏡を終了し、それが有効になるようにミラーを再起動します。
ドッキングウィンドウの再起動mysql_master
我々はまた、それを変更するスレーブマシンファイルに必要です。ドッキングウィンドウのexec -it mysql_slave / binに/ bashの:ここではマシンのコマンドを入力します。ドッキングウィンドウの再起動mysql_slave:アップデートとインストールの設定、良好な分布の上部に実行した後にスレーブを再起動してください。
[サーバID = 2 ログ -bin =はmysql- ビン binlog_format =混合
私たちは、次のようにコマンドがあり、マシン内のMySQLマスターに入力します。入力するためにrootのパスワードを入力します。
MySQLの-uroot -p
私たちは、レプリケーションスレーブrootユーザ権限の許可を必要とします。許可されていない場合、ライブラリは、メインのライブラリに接続されていません。
GRANT REPLICATION SLAVE、*上の複製CLIENT * TO。' ルート' @ ' %' ;
場所ですマスターログファイルを見てください。私たちは、マスタマシンのファイルの名前と場所を参照してください。
MySQLの> ショーマスターのステータス。 + ------------------ + ---------- + -------------- + ---- -------------- + ------------------- + | ファイル| 位置| Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | + ------------------ + ---------- + -------------- + ---- -------------- + ------------------- + | mysqlのビン。000001 | 154 | | | | + ------------------ + ---------- + -------------- + ---- -------------- + ------------------- + 1行にセット(0.00秒)
我々はまた、マシンのとMySQLの内部にスレーブを開く必要があります。あなたは前後に切り替える必要がありますので。私たちは、ライブラリーの中から、以下のコマンドを実行します。マスターのホスト名の内部構成の設定、ホストのポート番号、ホストのユーザ名、パスワード、ホストのファイル名と場所。
= MASTER_HOSTする変更マスタ' mysql_masterを'、MASTER_PORT = 3306、master_user = ' ルート'、master_password = ' ルート'、MASTER_LOG_FILE = ' のMySQL-bin.000001 '、MASTER_LOG_POS = 154。
次は、私たちは奴隷を開始し、受注を参照するには、スレーブスレッド。
スレーブを起動します。
G \ショースレーブステータス;
はい説明内部が正常に開かや通信で、単語との通信がない場合はNO、再検討する必要のあるホストの上に設定されたホストのユーザー名とパスワードを確認するには、この時間が必要である。ました
私たちは、親機のテストにデータベースを構築しました - データベースのテストを作成してから、我々はすでに持っている、ライブラリーの中から参照してください。ライブラリーからの説明が作成されています。
> mysqlのショーのデータベース; + -------------------- + | データベース| + -------------------- + | INFORMATION_SCHEMA | | mysqlの| | performance_schema | | slavetest | | SYS | | テスト| + -------------------- + 6行にセット(0.00秒)
次に我々は、rootユーザ認証にマシンライブラリをmysql_slave。
GRANT REPLICATION SLAVE、*上の複製CLIENT * TO。' ルート' @ ' %' ;
そして、ログファイルの名前と場所mysql_slaveマシンを見てください。
マスターステータスを表示\ Gを、
私たちは、その後、mysql_masterマシンの正しい実装を入力して、正しい、間違った言葉を交換することができ、ファイルの名前と場所を2つの値を見て、次のコマンドに対応している見つけます。
= MASTER_HOSTする変更マスタ' mysql_slaveを'、MASTER_PORT = 3306、master_user = ' ルート'、master_password = ' ルート'、MASTER_LOG_FILE = ' のMySQL-bin.000001 '、MASTER_LOG_POS = 154。
実行完成mysql_masterに実行した後。
スレーブを起動します。
そして、スレーブ状態を見てください。あなただけのチャートの成功にはいのような単語としてある場合は注意してください。
G \ショースレーブステータス;
次はあなたがmysql_slaveマシン上でテーブルを作成します。データベースslavetestを作成します。私たちはmysql_masterのマシンに見えるこの時間を。
> mysqlのショーのデータベース;
+ -------------------- +
| データベース|
+ -------------------- +
| INFORMATION_SCHEMA |
| mysqlの|
| performance_schema |
| slavetest |
| SYS |
| テスト|
+ -------------------- +
今回は、ダブルメインのmysql完成した構造を説明してきました。