sql >> データベース >  >> RDS >> Sqlserver

MicrosoftSQLServerのディザスタリカバリのベストプラクティス

    SQL Serverは、データの保存と取得に広く使用されているリレーショナルデータベースシステムです。ディザスタリカバリは、SQLServerデータベースの保護に使用される最も一般的な方法です。したがって、管理者は、このような場合にデータベースを損失から保護するために、合理的な予防策を講じる必要があります。このブログでは、ユーザーが自然災害または人為的災害からデータを回復するために使用できるMicrosoftSQLServerの災害復旧のベストプラクティスを紹介しています。

    SQLディザスタリカバリの基本ポイント

    災害復旧計画が完了し、すべての依存関係が含まれている必要があります。現在のSQLServerを復元する必要がある場合は、SQLServerへのすべての依存関係が整っていることを確認してください。ハードウェアプラットフォームの依存関係が存在しないためにすべての障害復旧計画が失敗したため、ファイルシステムの依存関係、Windowsアカウント、アプリケーション、およびサーバーの他の多くの側面が利用可能である必要があります。

    計画はできるだけ単純で悪意のあるものでなければなりません。ソースサーバーで実行可能なアクションを制限するSQLServerディザスタリカバリテクノロジはごくわずかです。たとえば、データベースミラーリングを使用するときにリカバリモデルを変更できるかどうか。 SQL Serverのディザスタリカバリサイトを最新の状態に保つための手順は、次のとおりです。レプリケーションとログ配布ではログインをレプリケートできません。さらに、災害復旧時にすべてのログインを1か所で最新の状態に保つには、多数のプロセスが必要です。

    SQLデータベースファイルが破損している場合は、SQL回復ツールを使用してそれらを回復する必要があります 。これは、破損したSQLデータベースとすべてのオブジェクトを修復するのに役立ちます。これにより、SQLデータベースを修復して新規または既存のデータベースに復元できます。

    MicrosoftSQLServerのディザスタリカバリのベストプラクティス

    SQL Serverの最新バージョンには、困難な状況でSQL管理者に役立つディザスタリカバリメカニズムを設定するためのオプションがいくつか用意されています。次のセクションでそれらについて説明します。

    1. バックアップと復元
    2. AlwaysOnおよび基本的なデータベース可用性グループの使用
    3. フェイルオーバークラスタリング
    4. ログ配布
    5. データベースレプリケーション

    オプション1:SQLServerデータベースの定期的なバックアップ

    これは、最良かつ最も推奨されるSQLディザスタリカバリ計画です。ユーザーはデータベースのバックアップを定期的に取り、必要なときに簡単に復元できます。データベースのバックアップについて詳しく知りましょう:

    • SQL Server Management Studio、T-SQLコマンド、またはPowerShellを使用してデータベースのバックアップを作成します。
    • さまざまな種類のデータベースバックアップを実行します:完全データベース、差分データベース、部分データベース、トランザクションログファイル。
    • 必要に応じて、バックアップ(.bakファイル)からSQLデータベースを復元します。

    オプション2:AlwaysOnおよび基本的なデータベース可用性グループの使用

    AlwaysOn可用性グループ(AG)は、SQL Server高可用性(HA)およびMicrosoftSQLServerディザスタリカバリのベストプラクティスにとって最も重要なテクノロジです。 AlwaysOn AGは、SQL Server Enterpriseバージョンにのみ含まれており、プログラムされたフェイルオーバーを使用してさまざまなデータベースを保護します。それがどのように機能するか、以下のステップにリストしました:

    • 常時オンの可用性グループは、Linux / Windows Server/Windowsフェールオーバークラスター上のPacemakerと連携します。
    • ディザスタリカバリのためにセカンダリデータベースと同期されたセカンダリデータベースとの同期を提供します。
    • 常に利用可能な可用性グループは、プライマリデータベースのバックアップを取り、それらを別のシステムに安全に復元します。
    • 基本的な可用性グループは、SQLデータベースを保護するためにAlways-OnAvailabilityと同じように機能します。

    オプション3:フェールオーバークラスタリング

    AlwaysOn FCIは、予期しない損傷や停止に対してサーバーレベルのセキュリティを提供します。それについてもっと知りましょう:

    • WindowsServerフェールオーバークラスターおよびLinux上のPacemakerを使用してWindowsServerで動作します。
    • AlwaysOn FCIは、さまざまな物理的な場所に配置されたさまざまなクラスターノードでジオクラスタリングを使用したSQLディザスタリカバリに使用できます。
    • AlwaysOn FCIは、SQLServer2017の標準バージョンとエンタープライズバージョンで維持されます。
    • クラスターノードに障害が発生した場合、そのノードでホストされているサービスを、フェイルオーバーと呼ばれる別のノードに自動または手動で転送できます。

    オプション4:SQLログ配布

    ログ配布は、SQL 2017 Standard、Enterpriseエディション、および以前のSQLバージョンを含む2000以降のすべてのSQLバージョンで利用できます。

    • ログ配布では、管理者はプライマリデータベースのトランザクションログのバックアップを取ります。
    • このバックアップを1つ以上のセカンダリデータベースに移動します。
    • トランザクションログのバックアップをセカンダリSQLServerデータベースに復元します。

    オプション5:データベースレプリケーション

    この手順では、SQL Serverデータベースデータをコピーしてから、別のデータベースに配布します。これは、別のMicrosoftSQLServerディザスタリカバリのベストプラクティスです。その重要なポイントについて話し合いましょう:

    • レプリケーションテクノロジーは、データを提供するデータベースであるパブリッシャーと、パブリッシャーからデータベースを受け取るデータベースであるサブスクライバーで構成されます。
    • パブリッシャーの変更は、同期時にサブスクライバーに自動的に更新されます
    • 負荷分散を提供します。これにより、データを共有したり、複数のサーバーで負荷を照会したりできます。

    これらは、SQL管理者が将来の災害からSQLデータベースを保護するために従うことができる5つのSQLServerデータベース回復計画またはオプションです。ただし、SQLデータベースファイルが破損している場合は、SQL回復ソフトウェアを使用する必要があります。これにより、破損したSQLデータベースのMDFファイルを修復し、データをライブのSQLServerデータベースに直接保存できます。

    最後の言葉

    このブログでは、将来の災害からデータを保護するための最良のSQLディザスタリカバリ計画またはオプションについて説明しました。 5つのMicrosoftSQLServerディザスタリカバリのベストプラクティスとその仕組みについて説明しました。 SQLデータベースが破損している場合は、SQLデータベース回復ツールを使用することをお勧めします。


    1. oci_bind_by_nameおよびto_datePHP/ OCI / Oracle

    2. MySQLでWITH句をどのように使用しますか?

    3. PostgreSQLでのフリーズの管理

    4. 大規模データベース管理システム:設計および設計者