1. MySQLレプリケーション関連の概念
マスターノード:
ノードから:
コピー機能に関連するファイル:
スキーマをコピーします:
一般的なアーキテクチャには、マスタースレーブアーキテクチャやカスケードアーキテクチャがあります。 2. シンプルな1マスター1スレーブアーキテクチャの実装1. 新しいデータベースはマスタースレーブアーキテクチャを構築します1) メインサーバーの構成 ~]# vim /etc/my.cnf [mysqld] ログビン binlog_format=行 ログベース名=master1 サーバーID=1 ~]# systemctl mariadbを再起動します ~]#mysql MariaDB [(なし)]> GRANT REPLICATION SLAVE ON *.* TO testuser@'192.168.0.8' IDENTIFIED BY 'testpass'; #同期アカウントを承認 MariaDB [(なし)]> SHOW MASTER LOGS; +--------------------+------------+ | ログ名 | ファイルサイズ | +--------------------+------------+ | マスター1-bin.000001 | 26756 | | マスター1-bin.000002 | 921736 | | master1-bin.000003 | 401 | #この場所を記録し、サーバーから同期を開始します +--------------------+-----------+ 2) サーバー設定から ~]# vim /etc/my.cnf [mysqld] server_id=2 #サーバーIDは一意です relay_log=リレーログ リレーログインデックス=リレーログインデックス 読み取り専用=オン ~]# systemctl mariadbを再起動します ~]#mysql MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', #マスターノードのIPを指定します -> MASTER_USER='testuser', #同期ユーザーのユーザー名-> MASTER_PASSWORD='testpass', #パスワード-> MASTER_PORT=3306, -> MASTER_LOG_FILE='master1-bin.000003'、#上記に記録されたファイル-> MASTER_LOG_POS=401、#位置-> MASTER_CONNECT_RETRY=10; #再試行時間 10 秒MariaDB [(なし)]> START SLAVE; #マスター スレーブ レプリケーションを開始します 3) テスト マスターノードでデータを生成します。 MariaDB [(なし)]> CREATE DATABASE testdb; MariaDB [(なし)]> testdbを使用する MariaDB [testdb]> テーブル testlog を作成します (id int auto_increment primary key、name char(30)、age int default 20); MariaDB [testdb]> 区切り文字 $$ MariaDB [testdb]> プロシージャ pro_testlog() を作成します -> 開始 -> i int を宣言します。 -> i = 1 を設定します。 -> i < 100000 の場合 -> testlog(name,age) に値を挿入します (concat('testuser',i),i); -> i = i +1 を設定します。 -> 終了しながら; -> 終了$$ MariaDB [testdb]> 区切り文字; MariaDB [testdb]> トランザクションを開始します。 MariaDB [testdb]> pro_testlog を呼び出します。 MariaDB [testdb]> コミット; スレーブ ノードの同期ステータスを確認します。 MariaDB [(なし)]> SELECT COUNT(*) FROM testdb.testlog; +----------+ | カウント(*) | +----------+ | 99999 | #同期成功+----------+ MariaDB [(なし)]> スレーブステータスを表示\G *************************** 1. 行 **************************** Slave_IO_State: マスターがイベントを送信するのを待機中 マスターホスト: 192.168.0.7 マスターユーザー: testuser マスターポート: 3306 接続再試行: 10 マスターログファイル: master1-bin.000003 読み取りマスターログ位置: 10389814 リレーログファイル: リレーログ.000002 リレーログ位置: 10389944 リレーマスターログファイル: master1-bin.000003 Slave_IO_Running: Yes #IO スレッドが開始されました Slave_SQL_Running: Yes #SQL スレッドが開始されました Seconds_Behind_Master: 0 #マスターとスレーブのレプリケーション間の時間差 Master_Server_Id: 1 2. 古いデータベースに新しいスレーブサーバーを追加する1) メインサーバーの構成 ~]# vim /etc/my.cnf [mysqld] ログビン binlog_format=行 ログベース名=master1 サーバーID=1 ~]# systemctl mariadbを再起動します ~]# mysqldump -A -F --single-transaction --master-data=1 > full.sql ~]# scp full.sql [email protected]:/root/ ~]# mysql -e 'testpass' によって識別される testuser@'192.168.0.8' に *.* のレプリケーション スレーブを許可します。' 2) サーバー設定から ~]# vim /etc/my.cnf [mysqld] サーバーID=2 relay_log=リレーログ リレーログインデックス=リレーログインデックス 読み取り専用=オン ~]# systemctl mariadbを再起動します ~]# vim full.sql #バックアップSQLファイルに次の情報を追加します。CHANGE MASTER TO MASTER_HOST='192.168.0.7', MASTER_USER='テストユーザー', MASTER_PASSWORD='テストパス', マスターポート=3306、 MASTER_LOG_FILE='master1-bin.000005', マスターログPOS=245、 MASTER_CONNECT_RETRY=10; ~]# mysql < full.sql #SQL MariaDB のインポート中に構成が完了しました [(なし)]> SELECT COUNT(*) FROM testdb.testlog; +----------+ | カウント(*) | +----------+ | 99999 | +----------+ MariaDB [(なし)]> START SLAVE; #レプリケーションを開始する 3. カスケードレプリケーションアーキテクチャの実装1) マスターノード [root@master ~]# vim /etc/my.cnf [mysqld] ログビン binlog_format=行 ログベース名=マスター サーバーID=1 [root@master ~]# systemctl mariadbを再起動します MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 MariaDB [(なし)]> SHOW MASTER LOGS; +-------------------+----------+ | ログ名 | ファイルサイズ | +-------------------+----------+ | マスターbin.000001 | 26753 | | マスターbin.000002 | 921736 | | マスターbin.000003 | 401 | +-------------------+----------+ 2) スレーブノード [root@slave1 ~]# vim /etc/my.cnf [mysqld] log_bin #カスケードアーキテクチャでは、リレースレーブノードにバイナリログ機能binlog_format=ROWが必要であることに注意してください。 読み取り専用=オン サーバーID=2 log_slave_updates #これがキーです。その機能は、サービスからのデータの変更をバイナリログファイルに記録することです。relay_log=relay-log リレーログインデックス=リレーログインデックス [root@slave1 ~]# systemctl mariadbを起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master-bin.000003', -> MASTER_LOG_POS=401、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; MariaDB [(なし)]> SHOW MASTER LOGS; +--------------------+------------+ | ログ名 | ファイルサイズ | +--------------------+------------+ | mariadb-bin.000001 | 245 | +--------------------+------------+ MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 3) スレーブノードのスレーブノード [root@slave2 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=3 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@slave2 ~]# systemctl mariadbを起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.8', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='mariadb-bin.000001', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; 4) スレーブノードのスレーブノード2 [root@slave3 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=4 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@slave3 ~]# systemctl mariadbを起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.8', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='mariadb-bin.000001', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; カスケードレプリケーションが構築されたので、テストしてみましょう。 4. マスター-マスターレプリケーションアーキテクチャ
1) メイン1 [mysqld] ログビン binlog_format=行 ログベース名=master1 サーバーID=1 relay_log=リレーログ リレーログインデックス=リレーログインデックス auto_increment_offset=1 #自己増分フィールドは1から始まります auto_increment_increment=2 #毎回2ずつ増加します。つまり、master1ノードによって書き込まれたデータのidフィールドはすべて奇数です [root@master ~]# systemctl start mariadb MariaDB [(なし)]> SHOW MASTER LOGS; +--------------------+------------+ | ログ名 | ファイルサイズ | +--------------------+------------+ | マスター1-bin.000001 | 27033 | | マスター1-bin.000002 | 942126 | | マスター1-bin.000003 | 245 | +--------------------+------------+ MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.8', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master2-bin.000003', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; 2) メイン2 [mysqld] ログビン binlog_format=行 ログベース名=マスター2 サーバーID=2 relay_log=リレーログ リレーログインデックス=リレーログインデックス auto_increment_offset=2 #自己増分フィールドは 1 から始まります auto_increment_increment=2 #毎回 2 ずつ増加します。つまり、master1 ノードによって書き込まれたデータの id フィールドはすべて偶数です [root@master2 ~]# systemctl start mariadb MariaDB [(なし)]> SHOW MASTER LOGS; +--------------------+------------+ | ログ名 | ファイルサイズ | +--------------------+------------+ | マスター2-bin.000001 | 27036 | | マスター2-bin.000002 | 942126 | | マスター2-bin.000003 | 245 | +--------------------+------------+ MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master1-bin.000003', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; 3) テスト master1 にテーブルを作成し、データを追加します。MariaDB [(none)]> CREATE DATABASE db1; MariaDB [(なし)]> db1 を使用する MariaDB [db1]> テーブル t1 を作成します (id INT(2) AUTO_INCREMENT PRIMARY KEY、name CHAR(30))。 MariaDB [db1]> INSERT t1(name) VALUES ('tom'); MariaDB [db1]> INSERT t1(name) VALUES ('maria'); MariaDB [db1]> t1 から * を選択します。 +----+-------+ | ID | 名前 | +----+-------+ | 1 | トム | | 3 | マリア | +----+-------+ master2MariaDB にデータを追加します [db1]> INSERT t1(name) VALUES ('jerry'); MariaDB [db1]> INSERT t1(name) VALUES ('tony'); MariaDB [db1]> t1 から * を選択します。 +----+-------+ | ID | 名前 | +----+-------+ | 1 | トム | | 3 | マリア | | 4 | ジェリー | | 6 | トニー | 5. 半同期レプリケーションの実装デフォルトでは、MySQL のレプリケーション機能は非同期であり、最高のパフォーマンスを提供できます。マスター データベースは、binlog ログをスレーブ データベースに送信すると終了し、スレーブ データベースがそれを受信したかどうかを確認しません。つまり、マスターサーバーまたはスレーブサーバーに障害が発生した場合、スレーブサーバーはマスターサーバーから送信された binlog ログを受信できない可能性があり、マスターサーバーとスレーブサーバーの間でデータの不整合が発生し、回復中にデータが失われることもあります。準同期レプリケーションのメカニズムは、マスターノードとスレーブノードが同期されている場合にのみ、そのうちの 1 つだけが同期を完了し、書き込み完了を返すというものです。このメカニズムにより、データのセキュリティが確保されます。 1) マスターノード [root@master ~]# vim /etc/my.cnf [mysqld] ログビン binlog_format=行 ログベース名=マスター サーバーID=1 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@master ~]# systemctl mariadbを再起動します MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 MariaDB [(なし)]> SHOW MASTER LOGS; +-------------------+----------+ | ログ名 | ファイルサイズ | +-------------------+----------+ | マスターbin.000001 | 26753 | | マスターbin.000002 | 921736 | | マスターbin.000003 | 401 | +-------------------+----------+ MariaDB [(なし)]> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so'; #モジュールをインストール MariaDB [(なし)]> SET GLOBAL rpl_semi_sync_master_enabled=1; #準同期機能を有効にする MariaDB [(なし)]> SHOW GLOBAL VARIABLES LIKE '%semi%'; +------------------------------------+-------+ | 変数名 | 値 | +------------------------------------+-------+ | rpl_semi_sync_master_enabled | ON | #有効 | rpl_semi_sync_master_timeout | 10000 | | rpl_semi_sync_master_trace_level | 32 | | rpl_semi_sync_master_wait_no_slave | オン | +------------------------------------+-------+ MariaDB [(なし)]> SHOW GLOBAL STATUS LIKE '%semi%'; +--------------------------------------------+-------+ | 変数名 | 値 | +--------------------------------------------+-------+ | Rpl_semi_sync_master_clients | 0 | | Rpl_semi_sync_master_net_avg_wait_time | 0 | | Rpl_semi_sync_master_net_wait_time | 0 | | Rpl_semi_sync_master_net_waits | 0 | | Rpl_semi_sync_master_no_times | 0 | | Rpl_semi_sync_master_no_tx | 0 | | Rpl_semi_sync_master_status | オン | | Rpl_semi_sync_master_timefunc_failures | 0 | | Rpl_semi_sync_master_tx_avg_wait_time | 0 | | Rpl_semi_sync_master_tx_wait_time | 0 | | Rpl_semi_sync_master_tx_waits | 0 | | Rpl_semi_sync_master_wait_pos_backtraverse | 0 | | Rpl_semi_sync_master_wait_sessions | 0 | | Rpl_semi_sync_master_yes_tx | 0 | +--------------------------------------------+-------+ 2) ノード1から [root@slave1 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン ログビン binlog_format=行 ログベース名=スレーブ サーバーID=2 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@slave1 ~]# systemctl mariadbを再起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master-bin.000003', -> MASTER_LOG_POS=401、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so'; MariaDB [(なし)]> SET GLOBAL rpl_semi_sync_slave_enabled=1; MariaDB [(なし)]> START SLAVE; MariaDB [(なし)]> SHOW MASTER LOGS; +------------------+-----------+ | ログ名 | ファイルサイズ | +------------------+-----------+ | スレーブ bin.000001 | 26753 | | スレーブ bin.000002 | 921736 | | スレーブ bin.000003 | 245 | +------------------+-----------+ MariaDB [(なし)]> 'replpass' によって識別される repluser@'192.168.0.%' に *.* のレプリケーション スレーブを許可します。 3) ノード2から [root@slave2 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=3 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@slave2 ~]# systemctl mariadbを再起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.8', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='slave-bin.000003', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; 4) ノード3から [root@slave3 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=4 relay_log=リレーログ リレーログインデックス=リレーログインデックス [root@slave3 ~]# systemctl mariadbを再起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.8', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='slave-bin.000003', -> MASTER_LOG_POS=245、 -> MASTER_CONNECT_RETRY=10; MariaDB [(なし)]> START SLAVE; 6. 暗号化された送信と複製の実装デフォルトのマスター/スレーブ レプリケーション プロセス、または MySQL/MariaDB にリモートで接続する場合、リンク通信のすべてのデータはプレーン テキストです。外部ネットワークでデータにアクセスしたり、データを複製したりすると、セキュリティ上のリスクが生じます。 SSL/TLS 暗号化を介してコピーする方法により、データのセキュリティがさらに向上します。
1) カリフォルニア州 [root@CA ~]# mkdir /etc/my.cnf.d/ssl/ [root@CA ~]# cd /etc/my.cnf.d/ssl/ [root@CA ssl]# openssl genrsa 2048 > cakey.pem [root@CA ssl]# openssl req -new -x509 -key cakey.pem -out cacert.pem -days 3650 #自己署名証明書 国名 (2 文字コード) [XX]:CN 州または県名(フルネーム) []:北京 地域名(例:都市)[デフォルトの都市]:北京 組織名(例:会社)[デフォルト会社 Ltd]:testmysqlca 組織単位名(例:セクション)[]:opt 共通名(例:あなたの名前またはサーバーのホスト名)[]:ca.testmysqlca.com [root@CA ssl]# openssl req -newkey rsa:2048 -days 365 -nodes -keyout master.key > master.csr 国名(2文字コード)[XX]:CN 州または県名(フルネーム) []:北京 地域名(例:都市)[デフォルトの都市]:北京 組織名(例:会社)[デフォルト会社 Ltd]:testmysqlca 組織単位名(例:セクション)[]:opt 共通名(例:あなたの名前またはサーバーのホスト名)[]:master.testmysqlca.com [root@CA ssl]# openssl x509 -req -in master.csr -CA cacert.pem -CAkey cakey.pem -set_serial 01 > master.crt #マスター証明書に署名 [root@CA ssl]# openssl req -newkey rsa:2048 -days 365 -nodes -keyout slave.key > slave.csr 国名(2文字コード)[XX]:CN 州または県名(フルネーム) []:北京 地域名(例:都市)[デフォルトの都市]:北京 組織名(例:会社)[デフォルト会社 Ltd]:testmysqlca 組織単位名(例:セクション)[]:opt 共通名(例:あなたの名前またはサーバーのホスト名)[]:slave.testmysqlca.com [root@CA ssl]# openssl x509 -req -in slave.csr -CA cacert.pem -CAkey cakey.pem -set_serial 02 > slave.crt #スレーブ証明書に署名 [root@CA ssl]# openssl req -newkey rsa:2048 -days 365 -nodes -keyout slave2.key > slave2.csr 国名(2文字コード)[XX]:CN 州または県名(フルネーム) []:北京 地域名(例:都市)[デフォルトの都市]:北京 組織名(例:会社)[デフォルト会社 Ltd]:testmysqlca 組織単位名(例:セクション)[]:opt 共通名(例:あなたの名前またはサーバーのホスト名)[]:slave2.testmysqlca.com [root@CA ssl]# openssl x509 -req -in slave2.csr -CA cacert.pem -CAkey cakey.pem -set_serial 03 > slave2.crt #slave2 証明書に署名 [root@CA ssl]# openssl verify -CAfile cacert.pem master.crt slave.crt slave2.crt #証明書が利用可能かどうかを確認 master.crt: OK スレーブ.crt: OK slave2.crt: OK まず、各ノードに /etc/my.cnf.d/ssl/ フォルダーを作成し、それぞれの証明書、CA 証明書、およびそれぞれのキー ファイルをそこにコピーします。[root@CA ssl]# scp cacert.pem master.crt master.key [email protected]:/etc/my.cnf.d/ssl/ [root@CA ssl]# scp cacert.pem slave.crt slave.key [email protected]:/etc/my.cnf.d/ssl/ [root@CA ssl]# scp cacert.pem slave2.crt slave2.key [email protected]:/etc/my.cnf.d/ssl/ 2) マスター [root@master ~]# mkdir /etc/my.cnf.d/ssl/ [root@master ~]# vim /etc/my.cnf [mysqld] ログビン binlog_format=行 ログベース名=マスター サーバーID=1 ssl #SSL 機能を有効にする ssl-ca=/etc/my.cnf.d/ssl/cacert.pem #CA 証明書のパスを指定する ssl-cert=/etc/my.cnf.d/ssl/master.crt #独自の証明書のパスを指定する ssl-key=/etc/my.cnf.d/ssl/master.key #独自のキーファイル パスを指定する [root@master ~]# systemctl restart mariadb MariaDB [(なし)]> GRANT REPLICATION SLAVE ON *.* TO repluser@'192.168.0.%' IDENTIFIED BY 'replpass' REQUIRE SSL; # ユーザーを承認し、SSL ログインを有効にするようユーザーに強制します MariaDB [(なし)]> SHOW MASTER LOGS; +-------------------+----------+ | ログ名 | ファイルサイズ | +-------------------+----------+ | マスターbin.000001 | 26753 | | マスターbin.000002 | 921736 | | マスターbin.000003 | 413 | +-------------------+----------+ 3) 奴隷1 [root@slave1 ~]# mkdir /etc/my.cnf.d/ssl/ [root@slave1 ~]# mysql -urepluser -preplpass -h192.168.0.7 --ssl-ca=/etc/my.cnf.d/ssl/cacert.pem --ssl-cert=/etc/my.cnf.d/ssl/slave.crt --ssl-key=/etc/my.cnf.d/ssl/slave.key [root@slave1 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=2 relay_log=リレーログ リレーログインデックス=リレーログインデックス ssl ssl-ca=/etc/my.cnf.d/ssl/cacert.pem ssl-cert=/etc/my.cnf.d/ssl/slave.crt ssl-key=/etc/my.cnf.d/ssl/slave.key [root@slave1 ~]# systemctl mariadbを再起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master-bin.000003', -> MASTER_LOG_POS=413、 -> MASTER_CONNECT_RETRY=10、 -> MASTER_SSL=1; #SSL接続を有効にするには指定する必要があることに注意してください MariaDB [(none)]> START SLAVE; 4) 奴隷2 [root@slave2 ~]# mkdir /etc/my.cnf.d/ssl/ [root@slave2 ~]# mysql -urepluser -preplpass -h192.168.0.7 --ssl-ca=/etc/my.cnf.d/ssl/cacert.pem --ssl-cert=/etc/my.cnf.d/ssl/slave2.crt --ssl-key=/etc/my.cnf.d/ssl/slave2.key [root@slave2 ~]# vim /etc/my.cnf [mysqld] 読み取り専用=オン サーバーID=3 relay_log=リレーログ リレーログインデックス=リレーログインデックス ssl ssl-ca=/etc/my.cnf.d/ssl/cacert.pem ssl-cert=/etc/my.cnf.d/ssl/slave2.crt ssl-key=/etc/my.cnf.d/ssl/slave2.key [root@slave2 ~]# systemctl mariadbを再起動します MariaDB [(なし)]> マスターを変更する -> MASTER_HOST='192.168.0.7', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> マスターポート=3306、 -> MASTER_LOG_FILE='master-bin.000003', -> MASTER_LOG_POS=413、 -> MASTER_CONNECT_RETRY=10、 -> MASTER_SSL=1; MariaDB [(なし)]> START SLAVE; 7. MySQLレプリケーションに関連する手順と変数の概要オプション:
変数:
命令:
これで、MySQL シリーズ 13 MySQL レプリケーションに関するこの記事は終了です。MySQL レプリケーションの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ウェブサイトはグレー表示されています。画像を含む互換コードはすべてのブラウザをサポートしています
Web ページの制作では、要素の表示と非表示は非常に一般的な要件です。この記事では、要素を表示したり...
共同インデックスこの記事におけるジョイントインデックスの定義は次のとおりです (MySQL): AL...
【歴史的背景】私は 3 年間 MySQL-DBA として働いてきましたが、MySQL が「基本的に利...
MySQL でテーブルを削除するのは非常に簡単ですが、削除コマンドを実行するとすべてのデータが消えて...
本日実装する機能は、以下の機能です。vue.js シミュレーションカレンダープラグインさて、もう無駄...
MySQLのパーティショニングは、非常に大きなテーブルを管理するのに役立ちます。MySQLのパーティ...
ウェブサイトを作成している際に、flv や MP4 形式などのビデオ ファイルはローカルでは正常に再...
目次1. タスクキュー2. 混乱を招く問題を説明する1. setTimeout(f1,0)とは何です...
この記事は主に、Nginx のフォワード プロキシとリバース プロキシ、および負荷分散機能の設定コー...
目次Viteプロジェクトビルドの最適化他のやっとこれは前回の記事の補足です。設定プロジェクトで遭遇し...
最近、画像はあるのに外部画像リソースが参照されていないウェブページを見つけました。気になりました。コ...
序文以前、MySQL 5.6 をインストールしました。3 か月後、開発者から MySQL で JSO...
フォームを入力不可にしたい場合は、フォームを次のように設定します。コードをコピーコードは次のとおりで...
間違った mysql コマンドを入力したのでキャンセルしたいです。どうすればいいですか? ctrl ...
最近、ウェブサイトを更新すると、503 Service Temporarily Unavailabl...