> MySQL 5.7 クラスタ マスターとスレーブをデプロイする (テストのみ) イメージバージョン 5.7 1. オーバーレイネットワークを作成する docker ネットワーク作成 --driver オーバーレイ common-network --attachable 2. 2つの設定ファイルmaster.cnfとslave.cnfを編集します。 !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ [mysqld] ログ bin = mysql bin サーバーID=1 gtidモード=オン 強制GTID一貫性=ON !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ [mysqld] サーバーID=2 gtidモード=オン 強制GTID一貫性=ON 3. 2つのMYSQLを起動します: mysql-master、mysql-slave docker run -d \ --name mysql-master \ --network 共通ネットワーク \ -e MYSQL_ROOT_PASSWORD=パスワード\ -v `pwd`/master.cnf:/etc/mysql/my.cnf \ -p 3306:3306 \ -d MySQL:5.7 docker run -d \ --name mysql-スレーブ \ --network 共通ネットワーク \ -e MYSQL_ROOT_PASSWORD=パスワード\ -v `pwd`/slave.cnf:/etc/mysql/my.cnf \ -p 3307:3306 \ -d MySQL:5.7 4. レプリケーションのためにライブラリからユーザーを追加する docker run -it --rm --network common-network mysql mysql -hmysql-master -uroot -pPassw0rd \ -e "'password' で識別されるユーザー 'repl'@'%' を作成します。SSL が必要です。" \ -e "*.* のレプリケーションスレーブを 'repl'@'%' に付与します。" 5. マスターとスレーブを接続する docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd \ -e "マスターを MASTER_HOST='mysql-master'、MASTER_PORT=3306、MASTER_USER='repl'、MASTER_PASSWORD='password'、MASTER_AUTO_POSITION=1、MASTER_SSL=1 に変更します。" \ -e "スレーブを起動します。" 6. スレーブステータスを確認する docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd -e "スレーブステータスを表示\G" 次のステータスは正常です: スレーブIO実行中: はい スレーブSQL実行中: はい > MySQL 8.0 クラスタ マスターとスレーブをデプロイする (テストのみ) ミラーバージョン mysql:8.0 1. オーバーレイネットワークを作成する docker ネットワーク作成 --driver オーバーレイ common-network --attachable 2. 2つのMYSQLを起動します: mysql-master、mysql-slave docker run -d \ --name mysql-master \ --network 共通ネットワーク \ -e MYSQL_ROOT_PASSWORD=パスワード\ -p 3306:3306 \ -d mysql --default-authentication-plugin=mysql_native_password docker run -d \ --name mysql-スレーブ \ --network 共通ネットワーク \ -e MYSQL_ROOT_PASSWORD=パスワード\ -p 3307:3306 \ -d mysql --default-authentication-plugin=mysql_native_password 3. マスターとスレーブを構成する docker run -it --rm --network common-network mysql mysql -hmysql-master -uroot -pPassw0rd \ -e "SET PERSIST server_id=1;" \ -e "PERSIST_ONLY gtid_mode=ON に設定します。" \ -e "PERSIST_ONLY にenforce_gtid_consistency=true を設定します。" \ -e "'password' で識別されるユーザー 'repl'@'%' を作成します。SSL が必要です。" \ -e "*.* のレプリケーションスレーブを 'repl'@'%' に付与します。" docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd \ -e "SET PERSIST server_id=2;" \ -e "PERSIST_ONLY gtid_mode=ON に設定します。" \ -e "PERSIST_ONLY にenforce_gtid_consistency=true を設定します。" 4. マスターとスレーブを再起動する docker 再起動 mysql-master mysql-slave 5. マスターとスレーブを接続する docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd \ -e "マスターを MASTER_HOST='mysql-master'、MASTER_PORT=3306、MASTER_USER='repl'、MASTER_PASSWORD='password'、MASTER_AUTO_POSITION=1、MASTER_SSL=1 に変更します。" \ -e "スレーブを起動します。" 6. スレーブステータスを確認する docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd -e "スレーブステータスを表示\G" 次のステータスは正常です: スレーブIO実行中: はい スレーブSQL実行中: はい > データ同期を確認する マスターにデータベースanoyiを作成する docker run -it --rm --network common-network mysql mysql -hmysql-master -uroot -pPassw0rd \ -e "データベース anoyi を作成、デフォルトの文字セットは utf8mb4、照合は utf8mb4_general_ci です。" スレーブ上のデータベースリストを表示する docker run -it --rm --network common-network mysql mysql -hmysql-slave -uroot -pPassw0rd \ -e "データベースを表示" mysql: [警告] コマンドライン インターフェイスでパスワードを使用すると安全でない可能性があります。 +--------------------+ | データベース | +--------------------+ |アノイ| | 情報スキーマ | |mysql | | パフォーマンススキーマ | |システム| +--------------------+ 関連情報: MySQL 5.7: https://dev.mysql.com/doc/refman/5.7/en/replication.html 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: 史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 2) (パート 36)
デプロイに docker-compose を使用すると、出力ログと関連イベントが検証されて出力される...
1. まず、Linux サーバー上で公開鍵ファイルと秘密鍵ファイルを生成します。デフォルトの保存ディ...
目次ルーティングプラグインをモジュール方式で使用するルートの使用宣言型ナビゲーションプログラムによる...
通常、清明節、国哀悼日、大地震の日、影響力のある偉人の死去または命日には、ウェブマスターとして、故人...
MySQL には、「group_concat」という関数があります。通常の使用では問題がないかもしれ...
目次1. 大文字と小文字の区別を決定するパラメータ2. パラメータ変更に関する注意事項要約: 1. ...
MySQLデータベースを完全にアンインストールするプロセスは次のとおりです。 1. MySQLサービ...
Linux 仮想マシン: VMware + Ubuntu 16.04.4 Windows ネイティブ...
この記事では、商品詳細ページの虫眼鏡を実装するためのVueの具体的なコードを参考までに共有します。具...
ストアドプロシージャとは簡単に言えば、これは強力で、JAVA 言語のメソッドに似た比較的複雑な論理関...
MySQLではisnull()関数をnull値の代わりとして使用することはできません。次のように:ま...
参考までにWeChatアプレットで書かれた簡単な計算機です。具体的な内容は次のとおりです。 jisa...
ステップ1: ディレクトリに入ります: cd /etc/mysql、debian.cnfファイルを表...
1. まず本文にulタグを追加します <!-- 順序なしリスト --> <ul i...
LinuxにGeoIPをインストールする yum で nginx-module-geoip をインス...