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 で指定された期間に数分ごとにタスク スケジュール crontab を自動的に実行する方法

まずコードを見てみましょう #/bin/sh datename=$(日付 +%Y%m%d-%H%M%...

Vue プロジェクトでよく使用されるツール機能の概要

目次序文1. カスタムフォーカスコマンド1. 方法1 2. 方法2 3. 方法3 2. 入力ボックス...

Dockerを使用して外部からアクセス可能なMySQLを構築する詳細な説明

MySQL 8.0をインストールする docker run -p 63306:3306 -e MYS...

CSS を解析して画像のテーマカラー機能を抽出する (ヒント)

背景すべては、WeChat 技術グループのクラスメートが「写真の主な色を取得する方法はあるか」と尋ね...

Linux での MySQL 5.7.16 無料インストール バージョンのグラフィック チュートリアル

この記事では、参考までにMySQL 5.7.16の無料インストール版のチュートリアルを紹介します。具...

MySQLの複合インデックス方式の詳細な説明

どの DBMS でも、インデックスは最適化にとって最も重要な要素です。データ量が少ない場合、適切なイ...

CentOS8でyumソースを変更した後にウェアハウスキャッシュの同期に失敗する問題の詳細な説明

問題の原因: 最初は CentOS 8 のデフォルトの yum ソースを正常に使用できますが、次のコ...

クリエイティブな会社概要ウェブページデザイン

ユニークな「About」ページ自分を他の人たちと差別化する素晴らしい方法は、本当にユニークな自己紹介...

Vue はスクロール可能なポップアップウィンドウ効果を実装します

この記事では、スクロール可能なポップアップウィンドウ効果を実現するためのVueの具体的なコードを参考...

MySQLでよく使われる文字列関数トップ10の詳細な説明

こんにちは、みんな!技術の話ばかりで髪は切らないトニーです。データベース関数は、何らかの機能を持ち、...

Tomcat マルチレイヤーコンテナの設計に関する簡単な説明

目次コンテナ階層サーブレットの検索を要求するプロセス仕組みTomcat のコンテナは Servlet...

Alibaba Cloud で MySQL リモート接続を構成するための詳細な手順

序文ご存知のとおり、デフォルトでは、Alibaba Cloud にインストールされている MySQL...

Windows 10にWSL2 Ubuntu20.04をインストールしてdocker環境を構築する方法

WSLを有効にするシステムがWindows 10 2004以降であることを確認してください 「メニュ...

CSS スタイルで一般的なグラフィック効果を示すサンプルコード

一般的な基本グラフィックと私が遭遇するいくつかの小さなアイコンについて簡単に説明します。以下は CS...

TypeScriptの基本型の詳細な説明

目次ブール型数値型文字列型文字列と数値を連結する未定義およびnull配列型タプル型列挙型あらゆるタイ...