ホームページ  >  記事  >  データバックアップ時のデータベースの状態に応じて、いくつかのバックアップ方法があります。

データバックアップ時のデータベースの状態に応じて、いくつかのバックアップ方法があります。

青灯夜游
青灯夜游オリジナル
2022-07-21 17:06:026048ブラウズ

バックアップ方法は 3 つあります。 1. コールド バックアップ (オフライン バックアップとも呼ばれます) は、データベースが閉じられて更新できない場合にデータベースの完全なバックアップを指し、データは復元できます。指定された方法。 2. ホット バックアップはオンライン バックアップとも呼ばれ、データベースの実行中にアーカイブログ モードでデータベースをバックアップする方法です。 3. 論理バックアップとは、ソフトウェア テクノロジを使用してデータベースからデータをエクスポートし、それを出力ファイルに書き込むことを指します。ファイルの形式は通常、元のデータベースの形式とは異なり、元のデータ コンテンツのイメージにすぎません。データベース。

データバックアップ時のデータベースの状態に応じて、いくつかのバックアップ方法があります。

このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。

データバックアップ時のデータベースの状態に応じて、コールドバックアップ(オフラインバックアップ)、ホットバックアップ(オンラインバックアップ)、論理バックアップの3つのバックアップ方法があります。

データベースのコールド バックアップ

コールド バックアップ (コールド バックアップ) は、オフライン バックアップとも呼ばれ、データベースとデータベースをシャットダウンすることを指します。更新された条件でデータベースの完全なバックアップが実行され、指定された方法でデータを復元できます。

これの利点は、データベースの整合性を確保できること、バックアップ プロセスが簡単で復旧速度が比較的速いことですが、データベースを閉じると現在のビジネスに影響が及びます。サーバーがダウンしている間、ユーザーは Web サイトにアクセスできなくなります。たとえば、一部の電子商取引 Web サイトが店舗のお祝いの期間中にバックアップのためにデータベースをシャットダウンしなければならない場合、その損失は計り知れません。したがって、コールド スタンバイは通常、重要度の低い非中核ビジネスに使用されます。

コールド バックアップは最も速くて安全な方法です。 コールド バックアップの利点は次のとおりです:

1. 非常に高速なバックアップ方法です (ファイルをコピーするだけです)

2. 簡単にアーカイブできます (コピーするだけです)

3. 特定の時点に簡単に復元 (ファイルをコピーして戻すだけ)

4. アーカイブ方法と組み合わせて、データベースの「最良の状態」を復元できます。

5. メンテナンスの手間は少なく、セキュリティは高くなります。

しかし、コールド バックアップには次の欠点もあります:

1. 単独で使用すると、「特定の時点」までのリカバリしか提供できません。

2. バックアップ プロセス中はデータベースをバックアップする必要があり、他の作業は実行できません。つまり、コールド バックアップ プロセス中はデータベースを閉じる必要があります。

3. ディスク容量が限られている場合は、テープなどの他の外部ストレージ デバイスにのみコピーできるため、非常に時間がかかります。

4. テーブルまたはユーザーごとに復元することはできません。

可能であれば (主に効率に依存します)、情報をディスクにバックアップしてから、(ユーザーが作業できるように) データベースを起動し、バックアップされた情報をテープにコピーする必要があります (コピー中、データベースはも働きます)。

#コールド バックアップでコピーする必要があるファイルは次のとおりです: #1、すべてのデータ ファイル

2、すべての制御ファイル

3 、すべてのオンライン REDO ログ ファイル

4、Init.ora ファイル (オプション)

コールド バックアップはデータベースが閉じているときに実行する必要があることに注意してください。 , データベース ファイル システムのバックアップを実行しても効果はありません。

データベースのホット バックアップホット バックアップは、データベースの実行中にアーカイブログ モードでデータベースをバックアップする方法です。つまり、ホット バックアップは、システムが通常動作しているときのバックアップです。したがって、コールド バックアップ ファイルとホット バックアップ ファイルがある場合は、問題が発生したときにこれらのデータを使用してより多くの情報を復元できます。ホット バックアップでは、データベースが Archivelog() モードで動作する必要があり、大量のファイル スペースが必要です。データベースがアーカイブログ状態で実行されると、バックアップを作成できます。

ホット バックアップ コマンド ファイルは、次の 3 つの部分で構成されます:

1.データファイル、表スペース、および表スペースのバックアップ。

(1) 表スペースをバックアップ状態に設定します。

(2) 表スペースのデータファイルをバックアップします。

(3) 表スペースをバックアップ状態に復元します。通常の状態

#2.アーカイブログファイルのバックアップ

(1) アーカイブプロセスの一時停止

(2) アーカイブREDEログ対象ディレクトリ内のログファイル

(3) アーカイブプロセスの再起動

(4) アーカイブ REDO ログ ファイル

##3 をバックアップします。 alter database bachup controlfile コマンドを使用して制御ファイルのホット バックアップをバックアップする利点は次のとおりです。

テーブル スペースまたはデータベース ファイル レベル、およびバックアップ時間でバックアップできます。それは足りない。

  • #データベースはバックアップ中も使用できます。

  • 第 2 レベルのリカバリ (特定の時点までのリカバリ) を実現できます。

  • ほぼすべてのデータベース エンティティを復元できます

  • リカバリは高速であり、ほとんどの場合、データベースはまだ動作しています。

  • ホット バックアップの欠点は次のとおりです:

1.間違いを犯さないでください。そうしないと深刻な結果が生じます。

2.ホット バックアップが失敗した場合、取得された結果はポイント イン タイム リカバリに使用できません

3。メンテナンスが難しいため、「失敗」にならないように細心の注意を払う必要があります。

データベースの論理バックアップ

論理バックアップとは、ソフトウェア テクノロジを使用してデータベースからデータをエクスポートし、それを出力ファイルに書き込むことを指します。ファイルの形式は通常、元のデータベースの形式とは異なり、単なるデータ コンテンツのイメージです。オリジナルのデータベース。したがって、論理バックアップ ファイルはデータベースの論理リカバリ (データ インポート) にのみ使用でき、データベースの元のストレージ特性に基づく物理リカバリには使用できません。論理バックアップは通常、増分バックアップ、つまり最後のバックアップ以降に変更されたデータをバックアップするために使用されます。

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

##**本質: **エクスポートされた SQL ステートメント ファイル

**利点:**ストレージ エンジンに関係なく、mysqldump を使用して SQL ステートメントを準備できます

* *欠点:** 速度が遅い、インポート中に形式の不互換が発生する可能性がある、増分バックアップと累積増分バックアップが実行できない。

テーブル レベル、ライブラリ レベル、完全ライブラリ レベルの 3 つのレベルのバックアップを提供します。

注:

  • データは次のとおりです。 constant 、利用可能なサービス: データの一貫性を確保する方法、バックアップ中にテーブルをロックすると、テーブルが自動的にロックされます。ロック後はバックアップしてください。

    #
    本身为客户端工具:
    远程备份语法: # mysqldump -h 服务器  -u用户名  -p密码   数据库名  > 备份文件.sql
    本地备份语法: # mysqldump -u用户名  -p密码   数据库名  > 备份文件.sql
  • #一般的なバックアップ オプション

-A、--all-databases
  • ##すべてのライブラリをバックアップします

  • 例:
mysqldump -uroot -p'QianFeng@123' -A > /opt/a.sql

分析: - A の後には何も指定する必要はありません。データベース全体をバックアップするだけです。

-B、-databases bbs test mysql

  • Back複数のデータベースを作成します

  • 例:
mysqldump -uroot -p'QianFeng@123' -B db1 db2 db3 > /opt/a.sql

分析: -Bスペースで区切って複数のデータベースを続けることができます指定したテーブルをエクスポートします

例:

mysqldump -uroot -p'QianFeng@123' db1 table1 table2 > /opt/a .sql

分析: -B が追加されていない場合、デフォルトはライブラリ名、テーブル名、およびテーブル名です。後続のテーブルは前のライブラリ内にある必要があります。ライブラリ名は一意です。しかし、テーブル名はそうではありません。

–no-data、-d

  • データはエクスポートせず、データベース テーブル構造のみをエクスポートします。

  • 例:
mysqldump -uroot -p'QianFeng@123' db1 -d > /opt/a.sql

分析: -d を指定する必要があります。私たちの前に どのようなデータをバックアップする必要がありますか? -d は、テーブル構造のみをエクスポートすることを意味します。 関連知識の詳細については、

FAQ

列をご覧ください。

以上がデータバックアップ時のデータベースの状態に応じて、いくつかのバックアップ方法があります。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。