マスタースレーブmysql5.7.22を作成および構成するドッキングウィンドウ

Debianシステム

インストールのドッキングウィンドウ(参考サイト:HTTPS://cloud.tencent.com/developer/article/1360720)

パッケージの既存のリスト更新する1、
須藤はaptアップデートを

2、HTTPS必須パッケージを使用していくつかのパケットのインストールを許可し易い
傾向インストールのapt-輸送を-HTTPS CA -certificatesカールgnupg2ソフトウェア・プロパティ-共通

3.お使いのシステムにGPGキードッカー公式リポジトリを追加
-fsSL https://download.docker.com/linux/debian/gpgカール|須藤はapt-キーアドオン-

図4は、リポジトリドッカーAPTソースに追加:
アドインAPTリポジトリ"DEB [アーチ= AMD64] https://download.docker.com/linux/debian $(lsb_release -cs)安定"

5、ドッカーパッケージデータベースの更新パッケージで新しく追加されたレポ使用
須藤はaptアップデートを

6、あなたが代わりにDebianのレポのデフォルトのインストールのレポをドッキングウィンドウにしたいことを確認してください:
APT-キャッシュポリシードッカー-CEを

6、安装ドッカーは
aptのドッキングウィンドウ-CEをインストール

図7は、今デーモンが起動され、ドッカーをインストールして、プロセスを開始するためのプロセスを有効にする必要があります。それが実行されているかどうかを確認します。
systemctlステータスドッカーを

図8に示すように、指定されたバージョンのMySQL画像を引っ張る(URLを参照:HTTPS://www.cnblogs.com/xiaohanlin/p/10012730.html)
ドッカープルのMySQL:5.7.2

それともするDockerFIleの方法を使用して
、次のアプローチを使用することができますDockerFileは、MySQLの作成に使用

新規フォルダdirNameには
できませんので、mysqld.cnfもちろんフォルダ内のMySQLの設定ファイルを追加します

DockerFileファイルを追加
の内容を追加します
5.7.22:MySQLからの
COPY [ "mysqld.cnf"、 "の/ etc / MySQLの/ mysql.conf.d / mysqld.cnf"]#を追加することはできません
3306を公開

ローカルミラーリング作成V0 :. -t mysql5.7.22ドッキングウィンドウのビルドを実行して
ローカルミラーを作成するために、ビルドを
ミラー名-tを指定
:ラベルの名前を指定します
。ミラーを作成するときに、実際に使用される位置のビルドに対応するリモートファイルサーバーがあることを指定RESTのAPIのセットを提供し.Dockerエンジンリモートサーバー(私たちはドッキングウィンドウは、ランタイムエンジンで.Dockerドッカーに組み込む方法を理解する必要があります(つまり、サーバデーモンである)とクライアントツールは、ドッカーリモートAPIと呼ばれています、およびドッキングウィンドウのコマンドなどのクライアントツールならば、それはAPIのセットを介してエンジンドッカーとの対話で、様々な機能を実行するために。そのため、表面に我々がドッキングウィンドウあるようだが、機械では、実際にはすべてをさまざまな機能を実行このCの/ Sは、私たちは、リモートサーバードッカーエンジン風を操作できるように設計されています。)コマンドはすべてのコンテンツをリモートサーバーにアップロードされるため、リモート呼び出しが。サーバー(ドッカーエンジン)上のフォームを完了するために使用されています私たちは、ファイルが合理フォルダをアップロードするようにできるだけ多くをすべき、とDockerFileで ファイルのパスが正しく対応している必要があります。
上記のテキストが書かれたコピー[場合」、/etc/mysql/mysql.conf.d/mysqld.cnf位置を作成するために、現在のフォルダにコピーコピーmysqld.cnfローカルファイルがmysqld.cnfという名前のミラーリングの例であります../mysqld.cnf","/etc/mysql/mysql.conf.d/mysqld.cnf「]は、このようなビルドコマンドを実行するのに必要な時間である
:(V0 ..ドッカ-t mysql5.7.22を構築する書き込みを 、) ので、それは...フォルダ(ファイルのアッパー現在のフォルダのすべての内容)は、リモートサーバーに到達することになる、以来、ミラーは間違いなく肥大化になります。


9、ストレージ・パスをホスト・コンフィギュレーション・ファイルを使用して、ここで(mysqlのコンテナを起動し、日記のパスは、ドッキングウィンドウのcp mysql5_7_22_1使用することができますが、設定ファイルを指定しない場合は、ご自身の作成を開始する必要があります:/etc/mysql/mysql.conf.d/mysqldを。サーバーへのコンテナからのCNFは、/ etc / confに/ mysqlの/コピー)

ドッカー--name mysql5_7_22 -p 3306 RUN:常に3306 --restart = -v /etc/conf/mysql/mysqld.cnf:/etc/mysql/ mysql.conf.d / mysqld.cnf -vは/ var / log / mysqlの/ログ/:は/ var / log / mysqlの-v /データ/ mysqlの/:は/ var / libに/ mysqlの--privileged =真-e MYSQL_ROOT_PASSWORD = ルート/ mysql5.7.22をguodakai -d:V0
3306 -p:(ホストの前に、容器の背面)ホスト・ポートマッピングポート3306に容器3306の3306
--nameコンテナ名(その定義)
--restart =必ず容器はから開始するように設定されている
-vコンテナをマウントするホストの内容を指定する
chownコマンド: 'の所有権を変更し、私は、MySQLは、MySQLがドッキングウィンドウのログコマンドで見ることが起動しない起動した際に、調査結果は、情報があることを示唆している=真--privilegedされます/ var / libに/ mysqlの/ .... 「:-f mysql5_7_22許可拒否(ドッカログ参照を指定 ログファイル)
rootユーザーのパスワードを初期化する-e
背景に-dコンテナの実行を

あなたがドッキングウィンドウでコンテナを起動し、起動したい場合は=常に--restart追加することができ
、あなたはすでに開始コンテナを設定したい場合は、次のコマンドを使用することができます
なかれコンテナ名を= --restartドッキングウィンドウコンテナの更新を

図10に示すように、容器に
ドッカーEXEC -it mysql5_7_22バッシュ

11、終了コンテナ
終了

12、データベースコンテナに他のサーバーのデータ(両者が、参照URLのアクセスを必要とする:HTTPS://www.cnblogs.com/osfipin/p/9927185.html)
mysqldumpを-urootを- PROOT --opt jupin_zhizuan | MySQLの- 192.168.31.136-uroot - PROOT -C = -host jupin_zhizuan
--optのコマンドオプション、プラス勧告。アドオン- --add-ドロップテーブルを指定するのと同じ拡張インサート--lock-テーブル--quick --set-文字セット- --create-オプション--disable-キーをロックします。これは、高速ダンプ操作を与え、ダンプ・ファイルはすぐにMySQLサーバをロードすることができます生成することができます。
-Cは、クライアントとのすべての情報のサーバ圧縮伝送の間で有効になって。もちろん、あなたは戦略を持っている必要があります。

13、サービス(古い方法)から主を追加
/etc/mysql/mysql.conf.d/mysqld.cnf修正するために
コンテンツを追加するには、メインライブラリ:
文字-SET-サーバー= UTF8の
デフォルト・ストレージ・エンジン= INNODBの
sql_modeの= STRICT_TRANS_TABLES、NO_ENGINE_SUBSTITUTION

サーバー=。1 -id
log_bin =は/ var / log / MySQLの/ビンログ

ライブラリからコンテンツを追加します。
文字-SET-サーバー= UTF8の
デフォルト・ストレージ・エンジン= INNODBの
sql_modeの= STRICT_TRANS_TABLES、NO_ENGINE_SUBSTITUTION

ID = 2サーバ
log_bin =は/ var / log /のMySQL /バイナリログ
innodb_file_per_tableをON =
skip_name_resolve ONが=
バイナリログをフォーマットを=行優先
ログスレーブ更新をtrueに=
relay_log =は/ var / log /のMySQL / relay.log

以下はNavicatはを使用することができます操作(再度、この場合、2つのデータベースのデータを同期する必要がある)
メインデータベースに
クエリマスタリポジトリSHOWマスターステータス状態は
ライブラリから入射
ライブラリ停止スレーブからの停止;
=「192.168.174.136」をMASTER_HOSTマスター接続変更マスタから構成 、MASTER_USER = 'ルート'、MASTER_PASSWORD = ' 123456'、= 3306 MASTER_PORT、MASTER_LOG_FILE = 'binlog.000003と'、MASTER_LOG_POS = 154;(MASTER_LOG_FILE、MASTER_LOG_POSの状態に基づいて、ライブラリファイル及び位置)
ライブラリスレーブから始まるが開始;

!主いくつかのアカウントが読み取り専用に追加する必要が設定した後
!!!が設定した後、キングシティからの主なライブラリから吊り下げられた後に、自動的に完了データを再起動します

 

// GTIDマスタ-スレーブ構成リファレンスURL:HTTPS://blog.51cto.com/7834466/2345202
メイン設定ファイルが追加するコンテンツ
[mysqldを]
#GTID:
SERVER_ID = 135#サーバ上のID挙げ
gtid_mode =#1 GTIDオープンモードON
enforce_gtid_consistency =#に特定のために開いた後、テーブルを作成する強制GTIDの一貫性は、サポートされていません。

#binlog
log_bin =マスター-binlogの
ログスレーブアップデート= 1
binlog_format =行番号を強くお勧めします、他の形式は、一貫性のないデータをもたらすことができます

#relayログイン
この文は、スレーブライブラリから自動的に再起動せずに追加することはできませんした後に再起動mysqlの後skip_slave_start = 1#を

ライブラリ設定ファイルからコンテンツを追加
[mysqldを]
#GTID:
gtid_mode = ON
enforce_gtid_consistency = ON
SERVER_ID = 143

#binlog
ログインビン=スレーブbinlogの
ログスレーブアップデート= 1
binlog_format =行番号を強くお勧めします、他の形式は、一貫性のないデータをもたらすことができます

#relayログ
上記第1位=の後skip_slave_startを、この1は、再起動せずに追加することができ、自動的にスレーブライブラリからmysqlの後に再起動しません。


このライブラリからに
その後に行われ
、STOPスレーブを
CHANGE MASTER_HOST MASTER TO = '192.168.1.135'、MASTER_USER = 'REPL'、MASTER_PASSWORDは= 'XXX'、MASTER_PORT = 3306、= MASTER_AUTO_POSITION 1;。
スタートスレーブ;
表示スレーブステータスの\ G;参照は、状態

おすすめ

転載: www.cnblogs.com/phpk/p/11121405.html