> 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)
1. 背景Youzan の各 OLTP データベース インスタンスには、実行時間が特定のしきい値を超...
目次序文 👀リサーチを始めましょう🐱🏍オリジナル🧶 indexOf を使用した元の方法の最適化 ✍...
最近、プロジェクトで nginx を使用し、バックエンドで Java を使用しました。バックエンドで...
通常、Web サイトを構築する目的は、検索エンジンにインデックス登録してもらい、プロモーションを拡大...
MySQL 5.7.21 解凍版のインストールと設定方法は参考までに。具体的な内容は以下のとおりで...
目次前面に書かれたルータ.jsonルート生成メニュー生成効果要約する前面に書かれたルートを繰り返し記...
目次1. 子プロセス2. nodejsでのコマンド実行2.1 16進数エンコード2.2 ユニコードエ...
目次VMware バープスイート1. 仮想マシンイメージとVMwareのインストールと使用2. 仮想...
CSS3 パターン ギャラリーこの CSS3 パターン ライブラリには、純粋な CSS3 を使用して...
目次スケルトンスクリーンとは何ですか?デモデザインのアイデア具体的な実装スケルトンスクリーンとは何で...
序文ブロガーはアイデアIDEを使用しています。アイデア公式が最近サードパーティのアクティベーションサ...
MySQL 文字列の連結、インターセプト、置換、および検索位置。よく使用される文字列関数:関数例示す...
理由: MySQL 5.7.5 以降では機能依存関係の検出が実装されています。 only_full_...
ドロップダウンメニューを書くには、ボタンをクリックします。メニューの入り口はアイコンボタンをクリック...
背景Tencent Linux クラウド ホストがあり、その上に Docker (ServiceDo...