バイナリーログファイルは、ApsaraDB RDS for MySQLインスタンスに対して行われたすべての変更を記録し、プライマリ /セカンダリアーキテクチャの構築とデータの追跡に使用できます。 このトピックでは、ApsaraDB RDS for MySQLインスタンスのバイナリログファイルを表示および削除する方法について説明します。
バイナリログファイルとログバックアップファイルの違い
項目 | バイナリログファイル | ログバックアップファイル |
概要 | バイナリログファイルを使用して、プライマリ /セカンダリアーキテクチャを構築し、データを追跡できます。 | RDSインスタンスのログバックアップ機能を有効にすると、RDSインスタンスのバイナリログファイルがリアルタイムでバックアップストレージにアップロードされます。 バックアップストレージ内のバイナリログファイルは、ログバックアップファイルと呼ばれます。 ログバックアップファイルを使用して、指定したバックアップ保持期間内の特定の時点にデータを復元できます。 詳細については、「ログバックアップ機能の使用」をご参照ください。 |
有効化と無効化 | この機能は自動的に有効になり、無効にすることはできません。 | ビジネス要件に基づいて機能を有効または無効にできます。 |
課金ルール | 非該当 | ログバックアップ機能は無料で提供され、バックアップストレージの無料クォータが提供されます。 RDSインスタンスのデータバックアップファイルとログバックアップファイルの合計サイズが無料クォータを超えた場合、過剰なバックアップストレージに対して課金されます。 詳細については、「バックアップファイルのサイズの表示と管理」および「バックアップストレージ料金」をご参照ください。 |
ストレージ容量 | バイナリーログファイルは、RDSインスタンスのストレージ容量を消費します。 ストレージ容量は、基本情報 ページの 使用量統計 セクションで確認できます。 | ログバックアップファイルは、RDSインスタンスのストレージ容量を消費しません。 説明 ログバックアップファイルは、アクセスできないバックアップストレージに保存されます。 基本情報 ページの 使用量統計 セクションでログサイズを確認できます。 |
バイナリログファイルを生成するためのルール
バイナリーログファイルは、RDSインスタンスでリアルタイムに生成されます。 生成されるバイナリログファイルに基づくルールは、RDSインスタンスのRDSエディションによって異なります。
RDS Basic Edition、RDS Cluster Edition、またはRDS High-availability Edition: バイナリログファイルのサイズが512 MBを超えるか、バイナリログデータがバイナリログファイルに書き込まれる期間が6時間を超えると、新しいバイナリログファイルが生成されます。
RDS Enterprise Edition: バイナリログファイルのサイズが512 MBを超えると、新しいバイナリログファイルが生成されます。
一部のシナリオでは、RDSインスタンス上のバイナリログファイルのサイズが512 MB未満になる場合があります。 これは、特定のコマンドを実行したり、RDSインスタンスを再起動したりするときに発生します。 一部のシナリオでは、RDSインスタンス上のバイナリログファイルのサイズが512 MBを超える場合があります。 これは、RDSインスタンスで大規模なトランザクションを実行する場合に発生する可能性があります。
バイナリログファイルの表示
ApsaraDB RDSコンソールでは、バイナリログファイルを表示できません。 バイナリログファイルを表示するには、SHOW binary LOGS;
ステートメントを実行する必要があります。 詳細については、「ApsaraDB RDS for MySQLインスタンスのバイナリログファイルをリモートで取得して解析する方法を教えてください。 」をご参照ください。
バイナリログファイルの合計サイズを表示する
ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。
左側のナビゲーションウィンドウでモニターとアラーム をクリックします。 表示されるページの [標準監視] タブで、バイナリログファイルの合計サイズを表示します。
説明デフォルトでは、プライマリRDSインスタンスの合計サイズは、セカンダリRDSインスタンスのバイナリログファイルのサイズと同じです。 セカンダリRDSインスタンスがプライマリRDSインスタンスからデータをレイテンシーでレプリケートする、バイナリログファイルがレイテンシーでダンプされる、data Transmission Service (DTS) がRDSインスタンスのデータを移行する、またはセカンダリRDSインスタンスがバイナリログを読み取って適用するなどの理由により、サイズが異なる場合があります。
バイナリログファイルの削除
バイナリログファイルが削除されると、バイナリログファイルによって占有されていたストレージが解放されます。
バイナリログファイルがRDSインスタンスから削除された後、RDSインスタンスのログバックアップファイルのサイズは減少せず、RDSインスタンスのデータを特定の時点に復元することができます。 RDSインスタンスのログバックアップ機能を有効にした後にのみ、RDSインスタンスのデータを特定の時点に復元できます。
システムがRDSインスタンスのバイナリログファイルを自動的に削除するパラメーターを設定する
ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。
左側のナビゲーションウィンドウで、バックアップと復元 をクリックします。
表示されるページの [バックアップ戦略] タブで、[ローカルログ保持ポリシー] セクションの [編集] をクリックし、次のパラメーターを設定します。 システムは、パラメーター設定に基づいて、RDSインスタンスのバイナリログファイルを自動的に削除します。
パラメーター
説明
デフォルト値
システムアクション
保持期間
バイナリログファイルの最大保存期間。
3時間
ログバックアップ機能を使用して、保存期間が指定した保存期間を超えるバイナリログファイルをバックアップした場合、システムは自動的にバイナリログファイルを削除します。
最大ストレージスペース使用量
バイナリログファイルの最大ストレージ使用量。
説明ストレージ使用量=(バイナリログファイルのサイズ /ストレージ容量のサイズ) × 100%
30%
バイナリログファイルのストレージ使用量が最大ストレージ使用量を超える場合、ストレージ使用量が最大ストレージ使用量を下回るまで、システムは自動的に以前のバイナリログファイルを削除します。
保持する最大ファイル数
保持できるバイナリログファイルの最大数。
60
バイナリログファイルの保持数が最大数を超えた場合、最大数を下回るまで、システムは自動的に以前のバイナリログファイルを削除します。
利用可能なストレージスペース
ストレージ使用量が80% を超える場合、または使用可能なストレージ量が5 GB未満の場合に、バイナリーログファイルを自動的に削除するかどうかを指定します。
-
ストレージ使用量が80% を超えるか、使用可能なストレージの量が5 GB未満の場合、ストレージ使用量が80% 未満になり、使用可能なストレージの量が5 GBを超えるまで、システムは自動的に以前のバイナリログファイルを削除します。
RDSインスタンスのバイナリログファイルを手動で削除する
ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。
左側のナビゲーションウィンドウで、バックアップと復元 をクリックします。
表示されるページで、[ビンログのアップロード] をクリックします。 表示されたメッセージボックスで [OK] をクリックします。
説明この操作を実行すると、最新の2つのバイナリログファイルを除くすべてのバイナリログファイルが削除されます。 この場合、削除レイテンシが発生し、削除が有効になるまでに時間がかかる。
この操作は、RDS Basic Editionを実行するRDSインスタンスではサポートされていません。
バイナリログファイルを削除できず、ログ管理 ページの エラーログ タブに次の警告が表示された場合、データベースクライアントに障害が発生したり、変更追跡タスクが進行中である可能性があります。 この場合、バイナリログファイルを削除する前にタスクを停止する必要があります。
[Warning] file /home/mysql/data3001/mysql/mysql-bin.069435 was not purged because it was being readby thread number 17126285
[Binlogsのアップロード] 機能を使用する場合、指定されたObject Storage Service (OSS) バケットにバイナリログファイルがアップロードされます。 OSSバケットにオブジェクトとして保存されているバイナリログファイルの保持期間は、RDSインスタンスで指定したログバックアップの保持期間と同じです。
必要に応じて、 RDSインスタンスにログインし、
show binary logs;
コマンドを実行して、RDSインスタンスのバイナリログファイルを表示します。 詳細については、「DMSを使用したApsaraDB RDS For MySQLインスタンスへのログイン」をご参照ください。必要に応じて、 モニターとアラーム ページに移動し、バイナリログファイルのサイズを表示します。
次に何をすべきか
操作を呼び出して、バイナリログファイルを削除できます。 詳細は、「PurgeDBInstanceLog」をご参照ください。
ApsaraDB RDSコンソールを使用するか、操作を呼び出すことで、RDSインスタンスのログバックアップ機能を有効または無効にできます。 詳細については、「自動バックアップ機能の使用」または「ModifyBackupPolicy」をご参照ください。
ログバックアップファイルを使用して、ログバックアップの保持期間内の任意の時点にデータを復元できます。 詳細については、「完全データの復元」または「個々のデータベースとテーブルの復元」をご参照ください。
RDSインスタンスのストレージ容量に関するよくある質問 (ストレージ容量の増加方法やストレージ使用量の急増のトラブルシューティング方法など) を表示できます。 詳細については、「ストレージ容量に関するFAQ」をご参照ください。
よくある質問
ApsaraDB RDS for MySQLインスタンスのバイナリログを有効にする方法。
デフォルトでは、ApsaraDB RDS for MySQLインスタンスのバイナリログは有効になっており、無効にすることはできません。 詳細については、「バイナリログの管理」をご参照ください。
プライマリRDSインスタンスのバイナリログファイルのサイズが、データベースシステムのセカンダリRDSインスタンスのバイナリログファイルのサイズと異なるのはなぜですか。
デフォルトでは、プライマリRDSインスタンスのバイナリログファイルのサイズは、セカンダリRDSインスタンスのバイナリログファイルのサイズと同じです。 次の理由により、2つのサイズが異なる場合があります。
プライマリRDSインスタンスが待機時間でセカンダリRDSインスタンスにデータをレプリケートしたり、Binlogダンプスレッドが待機時間でバイナリログファイルをダンプしたり、data Transmission Service (DTS) がプライマリRDSインスタンスとの間でデータを移行したりします。
セカンダリRDSインスタンスがログレコードを読み取り、適用しています。
バイナリログファイルが生成された直後に、システムがRDSインスタンスのバイナリログファイルを自動的に削除するのはなぜですか。
RDSインスタンスのストレージ使用量が80% に達するか、RDSインスタンスの使用可能なストレージ量が5 GB未満になる可能性があります。 [ローカルログ保持ポリシー] ダイアログボックスで [利用可能なストレージスペース] パラメーターを [有効] に設定すると、すべてのバイナリログファイルは生成後すぐに削除されます。 RDSインスタンスのストレージ容量を手動で増やすか、RDSインスタンスの自動ストレージ拡張機能を有効にすることを推奨します。 これにより、ストレージ使用量が80% に達した場合、または使用可能なストレージの量が5 GB未満の場合でも、RDSインスタンスはロックされません。 詳細については、「インスタンス仕様の変更」または「自動ストレージ拡張の設定」をご参照ください。