> 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 stop/remove を紹介し、皆さん...
** CentOS7 で yum ソースをインストールし、rz および sz コマンドをアップロー...
webpack-dev-server コアコンセプトWebpack の ContentBase と ...
携帯モバイル ページは Chrome および Safari とのみ互換性があればよいため、カスタム ...
日常業務において、フォームの検証は非常に一般的な設計要件です。ログイン ボックスや登録ボックス、アン...
序文ページを作っていく上で、ページレイアウトに関する内容に遭遇することが多く、面接でも聞かれることも...
この記事は元々ブロガーのWeiwei Miaoによって書かれたものです。ブログホームページ: htt...
この記事の例では、円形のプログレスバーのドラッグアンドスライドを実現するための具体的なJSコードを紹...
序文:前回の記事では、MySQL システムでよく使用されるログをいくつか説明しました。実は、トランザ...
MySQL のデフォルトの varchar 型は大文字と小文字を区別しません (insensitiv...
MySQL では、ほとんどのインデックス (PRIMARY KEY、UNIQUE、INDEX、FUL...
1.マスクレイヤーのHTMLコードと画像をdivに配置する.img_div に入れました。 <...
tar バックアップ システム sudo tar cvpzf backup.tgz --exclud...
この記事は MySQL 公式サイトを参考にしてまとめたものであり、遭遇したいくつかの問題も記録されて...
目次1. 重複したリクエストをキャンセルする2. すべてのリクエストをクリーンアップするこのソリュー...