ホームページ >データベース >mysql チュートリアル >MySQ がデータ バックアップを実装する方法の詳細な説明

MySQ がデータ バックアップを実装する方法の詳細な説明

青灯夜游
青灯夜游転載
2018-10-17 17:42:272231ブラウズ

この記事では、MySQ のデータ バックアップとは何かを紹介し、MySQ でのデータ バックアップの方法を理解できるようにします。必要な方は参考にしていただければ幸いです。

#MySQL バックアップの概要

質問: バックアップと冗長性の違いは何ですか?

  • バックアップ: 機械的な故障や、データベース ファイルを別の場所に保存するなどの人的操作によるデータの損失を防ぐことができます。

  • 冗長性: データの冗長コピーは複数ありますが、これはマスターなどの機械的障害によるデータ損失を防ぐことしかできません。 -スタンバイモード、データベースクラスター。

#バックアップとは何ですか?

データベース Binlog my.cnf /data/xxx (データ ディレクトリ)

データベース、ログ ファイル、および構成ファイルをデータ ディレクトリに保存してみます。バックアップ。

バックアップ プロセス中に考慮する必要がある要素:

    1. 詳細なバックアップ計画 (バックアップの頻度、時点、サイクル) を作成する必要があります。 (現在のビジネス状況に応じて、バックアップ時間とバックアップデータのサイズを考慮する必要があります。データ量が大きすぎる場合は、災害冗長性を使用してください)。
  • 2. バックアップ データはデータベース以外の場所にローカルに保存する必要があり、複数のコピーを作成することをお勧めします。
  • 3. (データ災害が発生したときにデータを間に合うように復元できるように、バックアップされたデータはテスト環境で時々シミュレーションおよび復元されます。) (データの可用性を確保するため) バックアップ後完成しましたら、停電想定訓練を実施します。データベースが正常に起動できるか、データが正常にリストアできるかテストします。
  • 4. データ アプリケーションの機会と特性に応じて、適切なバックアップ ツールを選択します。
  • #5. データの一貫性。
  • 6. データの可用性。
  • #バックアップの種類

##論理バックアップ

論理バックアップとは業務を止めずにバックアップを行うことです。 バックアップされるのは、テーブル作成、データベース作成、挿入などの操作によって実行される SQL ステートメント (DDL DML DCL) です。小規模および中規模のデータベースに適しており、効率は比較的低くなります。

(通常、データベースが通常のサービスを提供するという前提で実行されます): mysqldump、mydumper、outfile への書き込み (テーブルのエクスポートとインポート) など。物理バックアップ

データベース ファイルを直接コピーします。大規模なデータベース環境に適しています。ストレージ エンジンによる制限はありませんが、異なる MySQL バージョンに復元することはできません。

(通常、バックアップは、データベースが完全にシャットダウンされている場合、または通常のサービス プロビジョニングを完了できない場合に実行されます)。例: tar、cp、xtrabackup、lvm スナップショットなど。オンライン ホット バックアップ

オンライン ホット バックアップ: AB レプリケーション (オンライン リアルタイム) (データ冗長性を参照) M-S

M-Sn

M-S1-S2

M-M-Sn

バックアップ ツール

#コミュニティ エディションのインストールパッケージ

#mysqldump

## のバックアップ ツールは、Enterprise エディションと Community エディションの両方に含まれています

#基本的に SQL ステートメントを使用してデータベースとデータを記述し、エクスポートしますMYISAM エンジンでテーブルをロックし、Innodb エンジンで行をロックします

データ量が多い場合は推奨されません

  • #mysqlhotcopy

  • 両方の Enterprise Editionおよび Community Edition には、Perl で書かれたスクリプトが含まれます。このスクリプトは、基本的にロック テーブル ステートメントを使用してデータをコピーします。
  • MYISAM データ エンジンのみをサポートします。
エンタープライズ バージョン インストール パッケージのバックアップ ツール

    mysqlbackup
  • オンライン バックアップ

  • 増分バックアップ

部分バックアップ

一貫性特定の時点でのステータスのバックアップ

##サードパーティのバックアップ ツール

  • ##XtraBackup および innobackupex

  • Xtrabackup は、InnoDB のデータ バックアップのためのツールです。オンライン ホット バックアップをサポートしています (バックアップはデータの読み取りと書き込みには影響しません)。 Xtrabackup には 2 つの主なツールがあります: xtrabackup、innobackupex
  • xtrabackup は InnoDB および XtraDB データ テーブルのみをバックアップします。myisam タイプのテーブルやデータ テーブル構造をバックアップすることはできません。 。
  • innobackupex は Xtrabackup をカプセル化する Perl スクリプトであるため、innodb と myisam のストレージ エンジンを同時にバックアップできますが、myisam を処理するときに読み取りロックを追加する必要があります
mydumper

mydumper マルチスレッド バックアップ ツールhttps://launchpad.net/mydumper/mydumper-0.9。 1.tar.gz

バックアップ方法

完全备份

增量备份

差异备份

差异备份


差异备份


# · 日曜日増分レベル 0 バックアップは、このデータベースでこれまでに使用された

すべて

ブロックをバックアップします。
•月曜日から土曜日月曜日から土曜日までの毎日、レベル 1 の差分増分バックアップは、レベル 1 または 0 の最新の増分バックアップ以降に変更されたすべてのブロックをバックアップします。月曜日のバックアップは、日曜日のレベル 0 バックアップ以降に変更されたブロックをコピーします。 、火曜日のバックアップは、月曜日のレベル 1 バックアップ以降に変更されたブロックをコピーします。など。
##• 日曜日
増分レベル 0 バックアップは、このデータベースでこれまでに使用された
すべて

ブロックをバックアップします。

• 月曜日 - 土曜日累積的増分レベル 1 バックアップでは、最新のレベル 0 バックアップ以降に変更されたすべてのブロックがコピーされます。最新のレベル 0 バックアップは日曜日に作成されたため、月曜から土曜までの毎日のレベル 1 バックアップでは、日曜のバックアップ以降に変更されたすべてのブロックがバックアップされます。

逻辑データの入出力(出力ファイルへ)mysqldump、mysqlhotcopy、 xtrabackup と innobackupex
lvm-snapshot、mysqlbackup

要約: 以上がこの篇の全内容であり、広く学術的に役立つことが期待されます。 ##bootstrapビデオ教程

以上がMySQ がデータ バックアップを実装する方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。