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 のショートカットのヒント

推薦する

Centos7 環境でバイナリ インストール パッケージから mysql5.6 をインストールする方法の詳細な説明

この記事では、centos7 環境でバイナリ インストール パッケージを使用して mysql5.6 ...

Linux システムによって報告される tcp_mark_head_lost エラーの処理方法

問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...

Webデザインの経験:ナビゲーションシステムをシンプルにする

<br />友人と話し合っていたとき、フレームワークのレイヤー設計の中で最も核となるのは...

Web インタビュー: MVC と MVVM の違いと、Vue が MVVM に完全に準拠していない理由

目次MVCとMVVMの違い前述のMVCC の概要長所と短所MVVM概要MVVM 実装者 — Vue ...

HTTP ステータス コード

このステータス コードは、リクエストのステータスに関する情報を提供し、サイトとリクエストされたページ...

JS 関数とコンストラクタを簡単に理解する

目次1. 概要1.1 Functionコンストラクタを使用して関数を作成する1.2 機能と目的2. ...

WindowsにOpenSSHをインストールし、SSHキーを生成してLinuxサーバーにログインします。

SSH の正式名称は Secure SHell です。 SSH を使用すると、送信されるすべてのデ...

Ubuntu 18.04.4 に MySQL をインストールするプロセスの詳細な説明

Ubuntu 18.04.4 に MySQL をインストールするプロセスを見てみましょう。内容は次の...

Ubuntu 18.04 に MySQL をインストールする (グラフィカル チュートリアル)

ヒント: 以下の操作はすべて root 権限で実行されます。 # MySQL がインストールされてい...

VMware 15 仮想マシンに Ubuntu 18.04 をインストールするグラフィック チュートリアル

ここ数年、私は自動化とコンピューターを行ったり来たりしてきました。最近は、機械学習に関連するプロジェ...

JS オブジェクトのコピー (ディープ コピーとシャロー コピー)

目次1. 浅いコピー1. Object.assign(ターゲット、ソース、ソース...) 2. スプ...

Nodejs は JSON 文字列を JSON オブジェクトに変換するエラー解決法

JSON 文字列を JSON オブジェクトに変換するにはどうすればいいですか? JSON.parse...

IDEA を使用して Web プロジェクトを作成し、Tomcat に公開する方法

目次ウェブ開発1. Web開発の概要Tomcatのインストールと設定Tomcatをインストールする2...

vue3+vite プロジェクトで svg を使用する方法の詳細なグラフィック説明

今日、vue3+viteプロジェクトの実践で、svgを使用する場合、以前の記述方法が使用できないこと...

テーブルの追加と削除の操作を実装する js

この記事の例では、テーブルを追加および削除するためのjsの具体的なコードを参考までに共有しています。...