MySQL遅延レプリケーションライブラリ方式の詳細な説明

MySQL遅延レプリケーションライブラリ方式の詳細な説明

簡単に言えば、遅延レプリケーションとは、スレーブ データベースがマスター データベースより 1 時間遅れるように、1 時間などの固定の遅延時間を設定することです。

MySQL 遅延レプリケーションライブラリ関数

存在は合理的であり、遅延レプリケーションは次の 3 種類の問題を解決するために使用できます。

1. データベースの誤操作後にデータを迅速に復元するために使用されます。

たとえば、誰かが誤ってテーブルを操作した場合、遅延期間中はスレーブ データベースのデータは変更されないので、スレーブ データベースのデータを使用して迅速なリカバリを行うことができます。

サービスを停止し、スレーブ データベースからマスター データベースにテーブルを直接インポートして、binlog に入力します。Binglog ではテーブルを復元できません。

2. 遅延テストに使用

たとえば、データベースの読み取りと書き込みの分離を適切に行い、スレーブ データベースを読み取りデータベースとして使用する場合、データが遅延すると何が起こるかを知る必要があります。この機能を使用して、レイテンシをシミュレートすることもできます。

圧力がそれほど大きくない場合は、遅延は非常に小さくなります。遅延が大きくなるとどうなるでしょうか? 5 分間のマスター スレーブ遅延はどのようなものですか?

3. 古いデータの照会やその他のニーズに使用

たとえば、特定の日前のテーブルまたはフィールドの値を頻繁に確認する必要がある場合は、バックアップを復元して確認する必要があります。

データベースに 1 週​​間の遅延などの遅延がある場合でも、同様の要件を解決できます。 もちろん、すべてのチームにこのニーズがあるわけではありません。

遅延レプリケーションの設定

遅延レプリケーション構成は、スレーブで MASTER TO MASTER_DELAY パラメータを設定することによって実現されます。

MASTERをMASTER_DELAY = Nに変更します。

N は秒数です。このステートメントは、スレーブ データベースがマスター データベースとデータを同期する前に N 秒遅延するように設定します。

具体的な操作:

スレーブデータベースサーバーにログインする

mysql>スレーブを停止します。
mysql> MASTER を MASTER_DELAY = 600 に変更します。
mysql>スレーブを起動します。
mysql>スレーブステータスを表示 \G;

SQL_Delay の値が 600 であり、設定が成功したことを確認します。

コマンドノート:

SQL_Delay: スレーブがマスターより遅れている秒数を表す負でない整数。

SQL_Remaining_Delay: Slave_SQL_Running_State が MASTER_DELAY 秒が経過するまで待機すると、マスターはイベントを実行します。

このフィールドには、遅延が何秒であるかを示す整数が含まれます。それ以外の場合、このフィールドは 0 になります。

さて、今日はここまでです。ちょっとした知識は短くて美しいものですが、長い記事は非常に役立ちます。しかし、実際に学ぶことはほんのわずかです。ちょっとした知識を蓄積していきましょう。 MySQL遅延レプリケーションライブラリメソッドの詳細については、次の関連リンクを参照してください。

以下もご興味があるかもしれません:
  • MySQL マスタースレーブ同期、読み取り書き込み分離構成手順
  • MySQL マスター スレーブ データベースの非同期性に対する 2 つのソリューション
  • MySQL マスタースレーブレプリケーションの原理と設定方法(詳細)
  • MySQL マスタースレーブ構成の解釈とその原理分析 (マスタースレーブ)
  • Mysql マスタースレーブ同期バックアップ戦略の共有
  • MYSQL マスタースレーブ非同期遅延原理の分析と解決
  • Linux システムで MySQL ホット バックアップを実装するための詳細な手順 (MySQL マスター スレーブ レプリケーション)
  • MySQL マスタースレーブレプリケーション(マスタースレーブ)の実際の動作例
  • MySQL マスタースレーブレプリケーションの手順と一般的なエラーの解決方法の詳細な説明
  • MySQL マスタースレーブ同期レプリケーションエラーを解決する例
  • Mysqlマスタースレーブ同期の実装原理
  • MySQL マスタースレーブレプリケーション構成のハートビート機能の紹介
  • Linux での MySQL データベース サーバーのマスター スレーブ同期を指定する構成例
  • MySQL マスター スレーブ データベースが同期していない問題の解決策
  • Windows 環境における MySQL データベースのマスター スレーブ同期バックアップ手順 (一方向同期)
  • MYSQL マスタースレーブデータベース同期バックアップ構成方法
  • MySQLデータベースのマスタースレーブ構成方法の共有
  • MySQLマスタースレーブデータ同期遅延の削減の詳細な説明

<<:  Linux仮想マシンを作成し、仮想マシンネットワークを設定する方法に関するVMwareの詳細なチュートリアル

>>:  JavaScript のショートカットのヒント

推薦する

Linux で PHP curl 拡張機能をインストールする方法の詳細な説明

この記事では、Linux で PHP curl 拡張機能をインストールする方法について説明します。ご...

CentOS7.8 に mysql 8.0.20 をインストールするための詳細なチュートリアル

1. MySQLソフトウェアをインストールするMySQL 公式 Yum リポジトリ、MySQL バー...

スライドボタン効果を実現するネイティブJS

Jsで作ったスライドボタンの具体的なコードは参考までに。具体的な内容は以下のとおりですまずエフェク...

Docker に influxdb をインストールするための詳細なチュートリアル (パフォーマンス テスト)

1. 前提条件1. プロジェクトが展開されました2. Dockerはすでにインストールされている2...

MySQL 派生テーブル(Derived Table)の簡単な使用例分析

この記事では、例を使用して、MySQL 派生テーブルの簡単な使用方法を説明します。ご参考までに、詳細...

CSS3 を使用してピカチュウのアニメーション壁紙を作成する例

文章さて、次はレンダリングを見せましょう。画像を見て初めて理解することに興味が湧くでしょう。そうでな...

MySQL 8.0 でのチェック制約の実装

みなさんこんにちは。私は技術の話ばかりして髪を切らない先生のトニーです。今回はMySQL 8.0で追...

Vueプロジェクトの最適化とパッケージ化の詳細な説明

目次序文1. ルーティングの遅延読み込み1. ルートの遅延読み込みが必要なのはなぜですか? 2. ル...

Dockerを使用してSpring Bootプロジェクトをデプロイする手順

目次シンプルなSpringbootプロジェクトを作成する1. pom.xmlでSpring Boot...

MySQL のデータ型とスキーマの最適化の詳細な説明

現在、MySQL の最適化について学習しています。この記事では、データ型とスキーマの最適化について紹...

jQueryはシンプルなボタンの色の変更を実装します

HTML と CSS で、ボタンの色を設定したいとします。 目的の効果は得られますが、プロセスはかな...

内部 IP アクセスのみを許可する Nginx プロキシ設定を追加する方法

位置 / { インデックス index.jsp; proxy_next_upstream http...

HTML テーブルタグチュートリアル (12): 境界線スタイル属性 FRAME

FRAME プロパティを使用して、表の境界線のスタイル タイプを制御します。基本的な構文<T...

vue+element テーブルで動的な列フィルタリングを実装するためのサンプルコード

要件: データをリスト形式で表示する場合、表示すべき情報項目が多く、表が横に長くなってしまいます。表...

Vue3.0 手書き拡大鏡効果

達成される効果は、固定ズームが 2 倍になり、マウスが左側の画像領域に入るとマスク レイヤーが表示さ...