• |
リモートホスト。増分バックアップをBARTがインストールされていないリモートホストにリストアする場合は、リストアプロセスはセクション 2.2.5.1に記載されている情報に従いますが、さらにセクション 2.2.5.2の要件を確立する必要があります。 |
リモートホスト上の復元ディレクトリ内の適切な場所に変更されたブロックを復元するために、リモートホスト上のBARTプログラムの実行中に増分バックアップ結果のサブコマンドの呼び出しを復元するため、BARTプログラムは、リモートホスト上で使用可能でなければなりません。
RESTOREサブコマンドは、-iオプションを指定してそのバックアップ識別子または名前を指定することで、増分バックアップを復元するために使用されます。すべてのRESTOREオプションは、完全バックアップをリストアする場合と同じ方法で使用されます。
増分バックアップのリストアに
RESTOREサブコマンドを使用する方法
については、第 5.4.8 項を参照してください 。また、
RESTOREサブコマンドの
-wオプションを使用して、変更されたブロックをリストア・ホストにストリーミングする複数の並列ワーカー・プロセスを指定します。
ステップ1:インクリメンタルバックアップを復元するリモートホストにBARTをインストールします。
3.2項の手順を使用して、このリモートホストにBARTをインストールします。
注:リモートホストにインストールされているBART設定ファイル
bart.cfgでは、編集は必要ありません。
手順2:リモートホスト上のLinuxオペレーティングシステムのユーザーアカウントを、BART構成ファイルの
remote_hostパラメータで指定されたリモートユーザーとして使用するか、
RESTOREサブコマンドを使用して増分バックアップを復元するときに
-rオプションを使用するかを決定します。このリモートユーザーは、増分バックアップをリモートホスト上に復元するディレクトリの所有者でもなければなりません。たとえば、ユーザアカウントは通常、Advanced Serverの場合は
enterprisedb 、PostgreSQLの場合は
postgresです。
手順3:パスワードなしのSSH / SCP接続が、BARTホストのBARTユーザーからリモートホストのリモートユーザーに確立されていることを確認します。パスワードなしのSSH / SCP接続の設定については、
4.2.1項を参照してください。
手順4:リモートユーザーがリモートホストに接続するとき、リモートユーザーの
PATH環境変数にBART
binディレクトリが含まれている必要があります。たとえば、次の例のように、ユーザーの
〜/ .bashrcまたは
〜/ .bash_profileファイルを変更して
PATH環境変数を設定します。
注意:パラメータを設定する必要がある
bart.cfgファイルを作成するために
、bart.cfg.sampleファイルを使用してください。
注: ポート・パラメーターの設定は、データベース・サーバーが5444以外のポートでlistenする場合にのみ必要です。
• |
[バート]。 設定ファイルのグローバルセクションを指定します。このパラメータは必須であり、BARTという名前にする必要があります。 |
• |
bart_host。 BARTがインストールされているホストのIPアドレス。このパラメータの値は、 bart_user @ bart_host_addressの形式で指定する必要があります。ここで、 bart_userは、BARTを実行するために使用され、BARTバックアップカタログディレクトリを所有するBARTホスト上のオペレーティングシステムユーザーアカウントです。 bart_host_addressは、BARTホストのIPアドレスです。このパラメータは必須です。 |
• |
backup_path。すべてのBARTデータベースサーバーのバックアップとアーカイブされたWALファイルが格納されるファイルシステムの親ディレクトリを指定します。このパラメータは必須です。 |
• |
pg_basebackup_path。 BARTホストにインストールした pg_basebackupプログラムへのパスを指定します。選択した pg_basebackupのバージョンに応じて適用される制限については、 2.1.3項を参照してください。このパラメータは必須です。 |
• |
xlog_method。 BACKUPサブコマンドによる pg_basebackupの実行中にトランザクションログを収集する方法を決定します。バックアップが完了した後にトランザクションログファイルを収集するように フェッチするように設定します。フルバックアップの作成と並行してトランザクションログを ストリーム配信するように設定し ます 。 streamが使用されている場合、影響を受けるデータベースサーバの postgresql.confファイルの max_wal_senders設定パラメータは、トランザクションログのストリーミングの追加セッションを考慮する必要があります(つまり、設定は最低 2でなければなりません)。 BART構成ファイルのサーバー・セクションの xlog_methodパラメーターの設定は、その特定のデータベース・サーバーのグローバル・セクションの xlog_methodの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの xlog_methodの設定が使用されます。いずれかのセクションで xlog_methodパラメーターが指定されていない場合、デフォルトは fetchです。 |
• |
retention_policy。アクティブなバックアップが不要とマークされ、削除の候補になるべき時期を決定します。設定は、 max_number BACKUPS 、 max_number DAYS 、 max_number WEEKS 、または max_number MONTHSのいずれか です 。max_numberは正の整数です。キーワード BACKUPS 、 DAYS 、 WEEKS 、および MONTHSがすべて省略された場合、指定された整数はデフォルトで max_number BACKUPSとして解釈されます。 BART構成ファイルのサーバー・セクション内の retention_policyパラメーターの設定は、その特定のデータベース・サーバーのグローバル・セクション内の retention_policyの設定をオーバーライドします。サーバーセクションで省略すると、グローバルセクションの retention_policyの設定が使用されます。いずれかのセクションで retention_policyパラメーターが指定されていない場合、 MANAGEサブコマンドを使用すると、追加のバックアップは廃止とマークされません。保持ポリシーを使用したバックアップの管理については、 5.2節を参照してください。 |
• |
wal_compression。 MANAGEサブコマンドが呼び出されたときに、BARTバックアップカタログでアーカイブされたWALファイルの圧縮を有効にします。アーカイブされたWALSファイルをgzip形式で圧縮するには、 enabledに設定します。ファイルを圧縮解除したままにするには、 disabledに設定します。 注意: gzip圧縮プログラムは、BARTユーザーアカウントの PATHになければなりません。 注:増分バックアップを実行するデータベースサーバーでは、アーカイブされたWALファイルの圧縮は許可されていません。 BART構成ファイルのサーバー・セクションの wal_compressionパラメーターの設定は、その特定のデータベース・サーバーのグローバル・セクションの wal_compressionの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの wal_compressionの設定が使用されます。どちらのセクションでも wal_compressionパラメーターが指定されていない場合、デフォルトは 無効です。 WAL圧縮に MANAGEサブコマンドを使用する方法については、第 5.4.7項を参照してください。 |
• |
copy_wals_during_restore。 RESTOREサブコマンドを呼び出すときに、アーカイブされたWALファイルの収集方法を決定します。データベースサーバのアーカイブリカバリに先立って、 有効に設定すると、アーカイブされたWALファイルがBARTバックアップカタログから restore_path / archived_walsディレクトリにコピーされます。データベースサーバのアーカイブリカバリ中に、BARTバックアップカタログからアーカイブされたWALファイルを直接取得するには、 無効に設定し ます 。 recovery.confファイルのBARTによって生成された restore_commandパラメータには、2つのオプションのどちらが使用されているかが反映されています。 -cオプションを指定して RESTOREサブコマンドを実行すると、アーカイブされたWALファイルがBARTバックアップカタログから restore_path / archived_walsディレクトリにコピーされ、BART構成ファイルの copy_wals_during_restoreパラメータの設定が上書き されます。 -cオプションを指定せずに RESTOREサブコマンドを実行すると、アーカイブされたWALファイルの取得方法が 決まります 。BART構成ファイルのserverセクションの copy_wals_during_restoreパラメータを明示的に設定すると、グローバルセクションの copy_wals_during_restoreの設定が上書きされます。その特定のデータベースサーバー。サーバーセクションで省略された場合は、グローバルセクションの copy_wals_during_restoreの設定が使用されます。いずれかのセクションで copy_wals_during_restoreパラメータが明示的に設定されていない場合、デフォルトは 無効です。詳細は、 5.4.8項を参照してください。 |
• |
ログファイル。 BARTログファイルへのパスを指定します。 bartプログラムからの出力がこのファイルに書き込まれます。このパラメータはオプションです。 logfile =の後にログファイルへのパスが指定されていない場合、またはパラメータがコメントアウトされている場合、BARTはログファイルを作成しません。 注意: BARTの使用中に、BARTログファイルに関するエラーメッセージが表示されるのは、通常、現在のBARTユーザーアカウントが所有していない既存のログファイルが存在するためです。問題を解決するには、既存のログファイルを削除または名前を変更し、BARTに現在のBARTユーザーアカウントが所有する新しいログファイルを作成させる。 |
• |
scanner_logfile。 WALスキャナログファイルへのパスを指定します。 bart-scannerプログラムからの出力がこのファイルに書き込まれます。このパラメータはオプションです。 scanner_logfile =の後にログファイルへのパスが指定されていない場合、またはパラメータがコメントアウトされている場合、BARTはWALスキャナログファイルを作成しません。 注: WALスキャナの使用中に、WALスキャナログファイルに関するエラーメッセージが表示されるのは、通常、現在のBARTユーザーアカウントが所有していない既存のログファイルが存在するためです。問題を解決するには、既存のログファイルを削除または名前を変更し、BARTに現在のBARTユーザーアカウントが所有する新しいログファイルを作成させる。 |
• |
スレッド数。増分バックアップのために BACKUPサブコマンドが呼び出されたときに、データベース・サーバーからBARTバックアップ・カタログへブロックをコピーするワーカー・スレッドの数を指定します。ワーカー・スレッドがデータ・ファイルをデータベース・サーバーからBARTバックアップ・カタログにコピーするフル・バックアップにも同じアプローチが適用されます。 BACKUPサブコマンドが -zまたは -cオプションで指定されている場合、圧縮されたバックアップを並列に提供するために、フルバックアップをとるときに圧縮操作に同じ一連のプロセスが使用されます。 注:圧縮操作は増分バックアップには適用されません。 BACKUPサブコマンドが --thread-countオプションで呼び出された場合、このオプションで指定されたワーカー・スレッドの数は、BART構成ファイル内の thread_countパラメータの設定を上書きします。 BACKUPサブコマンドが --thread-countオプションなしで呼び出された場合、使用されるワーカー・スレッドの数は次のように決定されます 。BART構成ファイルのserverセクションの thread_countパラメータの設定は、グローバル・セクションの thread_countの設定を上書きしますその特定のデータベースサーバのためのものです。サーバーセクションで省略された場合、グローバルセクションの thread_countの設定が使用されます。いずれかのセクションで thread_countパラメータが指定されていない場合、デフォルトは 1です。 注意:フルバックアップをとるとき、実際のスレッド数が 1にすぎない場合は、 BACKUPサブコマンドで --no-pg_basebackupオプションを指定しないかぎり、 pg_basebackupユーティリティを使用して完全バックアップを 実行します。 |
• |
バッチサイズ。増分バックアップのために BACKUPサブコマンドが呼び出されたときに、変更されたブロックをデータベース・サーバーからBARTバックアップ・カタログにコピーするために使用されるメモリーのブロック数を指定します。各ブロックは8192バイトです。指定できる最大値は 131072 (131072 * 8192 = 1 GB)です。最小許容値は 1です (1 * 8192 = 8192バイト)。 pg_read_binary_file()を実行しているときにサーバーがメモリ不足を起こしていると言うと、設定を減らしてください。 BART構成ファイルのサーバー・セクション内の batch_sizeパラメーターの設定は、その特定のデータベース・サーバーのグローバル・セクション内の batch_sizeの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの batch_sizeの設定が使用されます。 batch_sizeパラメーターがどちらのセクションにも指定されていない場合、デフォルト値の 49142 (49142 * 8192 = 3 / 8GB)が使用されます。 |
• |
scan_interval。 BARTバックアップカタログのアーカイブディレクトリにあるWALファイルのスキャンを強制的に実行するまでの秒数を指定します。 BART構成ファイルのサーバー・セクションの scan_intervalパラメーターの設定は、その特定のデータベース・サーバーのグローバル・セクションの scan_intervalの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの scan_intervalの設定が使用されます。いずれかのセクションで scan_intervalパラメータが指定されていない場合は、デフォルト値の 0が使用されます。つまり、ブルートフォーススキャンは開始されません。 |
手順1: pg_basebackupユーティリティプログラムがBARTホストにインストールされていることを確認します。まだ実行していない場合は、セクション
3.2を参照してください。
BART構成ファイルで、次の例に示すように、
pg_basebackup_pathパラメータを
pg_basebackupプログラムの場所に
設定します 。
ステップ2: BARTユーザーアカウントを作成または選択します。
たとえば 、管理対象データベースサーバがAdvanced ServerまたはPostgreSQLの場合は
、 enterprisedbまたは
postgresをBARTユーザアカウントとして選択できます。
ステップ3: BARTユーザーアカウントの環境変数を設定します。
• |
パス。最も単純で推奨される設定は、 PATH環境変数が BART_HOME / binディレクトリを含めること です 。これにより、BARTユーザーは現在の作業ディレクトリからBARTを呼び出すことができます。そうしないと、BARTユーザーは BART_HOME / bin内から現在の作業ディレクトリとしてBARTを呼び出す必要があります。その場合、現在の作業ディレクトリを PATH環境変数に含める必要があります。 BART_HOME / binディレクトリにある bart-scannerプログラムは、特定の状況では bartプログラムによって呼び出されます。詳細については、セクション 5.3を参照してください。 |
• |
LD_LIBRARY_PATH。 LD_LIBRARY_PATH 環境変数は、libpq ライブラリを含むディレクトリを 含める必要があるかもしれません 。このディレクトリは POSTGRES_INSTALL_HOME / libです。 LD_LIBRARY_PATHの設定については、 5.3項を参照してください。 |
INITサブコマンドまたは実際にBARTサブコマンド
を使用して bartコマンドラインプログラムを
呼び出すと、BARTによってサブディレクトリがまだ作成されていない場合は、設定ファイルにリストされている各データベースサーバのサブディレクトリが作成されます。
ステップ5: ログファイル設定パラメータをデフォルト値の
/tmp/bart.logに設定しておくことをお勧めします。このファイルは、
bartコマンドラインプログラムを初めて呼び出すときに作成されます。
同じ手順は 、
bart-scannerプログラム
の scanner_logfile設定パラメータに
適用されます。
ステップ6:このセクションの冒頭に記載されているその他のオプションのグローバルパラメータを設定します。これらのパラメータの設定は、すべてのデータベースサーバーに適用されますが、各データベースサーバーセクション内で上書きすることができます。
ステップ7: -sオプションを省略して
CHECK-CONFIGサブコマンドを呼び出し、グローバル・パラメータをチェックします。
CHECK-CONFIGサブコマンドの詳細は、
5.4.1項を参照してください。
手順8: BART構成ファイルにデータベースサーバーの最初のセットのパラメータを追加します。データベース・サーバー・パラメータの定義については、第
4.2.5項を参照してください。
• |
第 4.2.1.1 項では、SSHサーバー・デーモンを実行しているサーバーで公開鍵認証の使用を最初に有効にする必要がある方法の例を示します。 |
• |
4.2.1.3 項では、パスワードプロンプトなしで接続を確立する必要があるBART使用のホストの組み合わせについて説明します。 |
注: SSHまたはSCPのエラーまたは問題については、次のログファイルを調べてください。
注:公開鍵は、既存の
authorized_keysファイルの末尾に追加する必要があります。既存の
authorized_keysファイル全体を置き換えるべきではありません。
ステップ1:クライアントシステムで、SSHまたはSCP接続を開始するユーザーアカウントとしてログインします。
ステップ2:ユーザーアカウントのホームディレクトリに
移動し 、既存の
.sshサブディレクトリがあるかどうかを確認し
ます 。そうでない場合は、次のように作成します。
どこ ユーザーは、ユーザーアカウント名と
ユーザーグループは、ユーザーの関連するグループです。
ステップ3:次のコマンドで公開鍵ファイルを生成します。すべてのデフォルトのプロンプトを受け入れ、プロンプトが表示されたらパスフレーズを指定しないでください。
ステップ4:システム環境で使用可能な手段を使用して、ターゲットサーバ上にファイル
id_rsa.pubのコピーを作成します。
ステップ5:システム環境で可能な手段を使用して、ターゲットサーバに
target_userとしてログインします。
ssh target_user @ host_address
手順6:ターゲットユーザーアカウントのホームディレクトリに
移動し 、既存の
.sshサブディレクトリがあるかどうかを確認し
ます 。そうでない場合は、手順2に示すように作成します。
ステップ7:一時的なクライアントの公開鍵ファイル
tmp.pubをauthorized_keysという名前の
許可鍵ファイルに
追加します。既存の許可キーファイルが存在しない場合は、新しいファイルを作成しますが、既存の承認キーファイルを完全に置き換えないでください。
authorized_keysファイルは、グループや他のユーザーではなく、ファイル所有者のみがアクセスできるようにして
ください 。
authorized_keysファイルに必要なアクセス許可設定(600)がないか、または新しく作成された場合は、次のようにファイルアクセス権を変更します。
ssh target_user @ host_address
scp ファイル名 target_user @ host_address : directory_path
scp target_user @ host_address : directory_path / file ファイル名
〜/ .ssh / authorized_keysファイルに
公開鍵ファイルを追加する対象のSSHサーバは、BARTホストです。
authorized_keysファイルは、BARTユーザーアカウントのホームディレクトリにあります。
〜/ .ssh / authorized_keysファイルに
公開鍵ファイルを追加する対象のSSHサーバがデータベースサーバです。
authorized_keysファイルは、データベースバックアップを復元するディレクトリを所有しているユーザーアカウントのホームディレクトリにあります。
• |
INITサブコマンドが呼び出されたときに 、Postgresの archive_command設定パラメータを 設定します。 |
pg_hba.confファイルには、最低限、次の例のrepuserのために示したようにtemplate1データベースへのアクセス権を持つようにレプリケーションデータベースのユーザーを許可する必要があります。
たとえば、 bartuserは、BARTのユーザーアカウントで、その後
、/home/bartuser/.pgpassに位置
.pgpassファイルには、次のエントリが含まれている必要があります。
ときしたがって、 bartuserは、BARTの
BACKUP、複製データベースユーザのパスワード
、repuserを実行し、ポート
5444上で
192.168.2.24で実行されているデータベース・サーバに接続するために
bartuserの
.pgpassファイルから取得されます。
各BARTのエントリが含まれている必要があり.pgpassファイルには、データベース・サーバとそれに対応するレプリケーションデータベースのユーザーとパスワードを管理していました。
• |
Postgres 9.5の場合は wal_levelを、Postgres 9.6以降の場合は レプリカに 設定し ます 。 |
• |
archive_modeを onに 設定し ます 。 |
• |
archive_commandを 設定して 、WALファイルをBARTバックアップカタログにコピーします。 |
• |
設定したバックアップのために利用できる少なくとも一つのセッションを残すのに十分高い値に max_wal_sendersを 。 xlog_method =ストリームパラメータ設定は、BARTの構成ファイルで決定されるように、このデータベース・サーバで使用する場合、トランザクション・ログ・ストリーミングのための追加のセッションを考慮しなければならない設定 max_wal_sendersは (つまり、設定が 2の最小値でなければなりません) 。 xlog_methodパラメータの詳細は、 4.1および 4.2.5項を参照してください。 |
注:このセクションで説明する
archive_command設定パラメータは、
postgresql.confファイルにあります。この
Postgres archive_commandパラメータは、
BART archive_commandパラメータとは異なる方法で使用されます。このパラメータは、BART設定ファイルのサーバセクションで設定できますが、特定の条件下でのみ設定できます。
BART SHOW-SERVERSサブコマンドによって表示されるアーカイブパスのフィールドには、postgresql.confファイル内のPostgres にarchive_command設定パラメータで指定されたWALファイルをコピーする必要があり、完全なディレクトリパスを示しています。
次の例では、
SALは、
bartuserユーザーアカウントとして
192.168.2.22にあるBARTホストの
ディレクトリ / opt / backup / acctg / archived_walsに
WALファイルをコピーします。
使用 bartuserアカウントは、操作が
bartuserが所有BARTのバックアップカタログにコピーすることができます。
Postgresの archive_commandパラメータは、
INITサブコマンドで自動的に設定できます。
INITサブコマンドはPostgres
ALTER SYSTEMコマンドを呼び出して、管理対象データベースサーバの
POSTGRES_INSTALL_HOME / dataディレクトリにある
postgresql.auto.confファイルのPostgres
archive_command設定パラメータを設定します。
INITサブコマンドの詳細は、
5.4.2項を参照してください。
INITサブコマンドが
postgresql.auto.confファイルに生成する
アーカイブコマンド文字列は、BART構成ファイルにあるBART
archive_commandパラメータのパラメータ設定によって決まります。
BART設定ファイルのサーバセクションには 、
postgresql.auto.confファイルのPostgres
archive_commandパラメータに生成されるアーカイブコマンド文字列の目的のフォーマットを指定する
BART archive_commandパラメータを
含めることができます。 BART
archive_commandパラメータが、特定のデータベースサーバのサーバセクションに設定されていない場合、設定されているコマンド文字列は、次のデフォルト形式を使用します。
WALファイルが保存される場所 の アーカイブパス に 置き換えられ ます。アーカイブパスは、 backup_path / server_name / archived_walsの 形式をとります。 ここで、 backup_path はBART構成ファイルのグローバルセクションで指定されたBARTバックアップカタログの親ディレクトリで、 server_name はサーバーセクションのこのデータベースサーバーに指定されたデータベースサーバー名BART構成ファイルの
アーカイブコマンド文字列を作成するときは、
プレースホルダ %hと
%aが
INITサブコマンドに置き換えられます。プレースホルダ
%pと
%fは
INITサブコマンドに置き換えられませんが、Postgresのアーカイブプロセスで使用されるように保持されます。
次のようにINITサブコマンドは、BARTのユーザアカウントbartuserによって呼び出されます。
注:自動構成プロセスを利用するには、
-oオプションを指定して
INITサブコマンドを実行します。このオプションは
、postgresql.confのか
postgresql.auto.confファイル内の既存のPostgres
にarchive_command設定を上書きします。さらに、
postgresql.confまたは
postgresql.auto.confファイルにPostgres
archive_commandの既存の設定がなくても、
archive_mode設定パラメータが
offに設定さ
れている場合は、
-oオプションを使用してコマンド文字列を生成する必要があります。
注意: 4.2.3.1項で説明したように、
postgresql.confファイルでPostgresの
archive_commandパラメータを設定し、その特定の設定を使用する場合は、
INITサブコマンドを実行するときに
-oオプションを指定しないでください。そうでない場合は、Postgresの
archive_command設定が上書きされますこのセクションで説明されている自動構成プロセスに従って実行されます。
次のようにINITサブコマンドは、BARTユーザアカウントのEnterpriseDBによって呼び出されます。
postgresql.auto.confファイルの
Postgres archive_commandパラメータは、次のように表示されます。
必要なコマンド文字列を生成した後 postgresql.auto.confファイル 、postgresql.confファイルに必要なWALアーカイブの設定を完了します。
• |
Postgres 9.5の場合は wal_levelを、Postgres 9.6以降の場合は レプリカに 設定し ます 。 |
• |
archive_modeを onに 設定し ます 。 |
• |
設定したバックアップのために利用できる少なくとも一つのセッションを残すのに十分高い値に max_wal_sendersを 。 xlog_method =ストリームパラメータ設定は、BARTの構成ファイルで決定されるように、このデータベース・サーバで使用する場合、トランザクション・ログ・ストリーミングのための追加のセッションを考慮しなければならない設定 max_wal_sendersは (つまり、設定が 2の最小値でなければなりません) 。 xlog_methodパラメータの詳細は、 4.1および 4.2.5項を参照してください。
|
データベースサーバが再起動されると、
SHOW-SERVERSサブコマンド
の ARCHIVE COMMANDフィールドに、アクティブなPostgres archiveコマンドが次のように表示されます。
• |
BACKUPサブコマンドを使用して、完全バックアップに tar( -F t )またはプレーンテキスト( -F p )のバックアップファイル形式を使用できます。増分バックアップには、プレーンテキスト( -F p )バックアップファイル形式を使用する必要があります。 |
• |
pg_basebackupでフルバックアップを取る トランザクションログストリーミング( xlog_method = BART構成ファイルの ストリーム )は、 -F pオプションが BACKUPサブコマンドで指定されている かぎり使用できます。したがって、トランザクション・ログ・ストリーミングは、ユーザー定義の表領域を含むデータベース・クラスタで使用できます。 |
tablespace_pathパラメータを使用すると 、表領域を復元したい先のディレクトリパスを指定します。
tablespace_pathパラメータは次の形式を取ります。
OID_1 = tablespace_path_1 ; OID_2 = 表スペース _path_2 ...
OID_1 、
OID_2 、...は表領域のオブジェクト識別子です。次の例に示すように、
POSTGRES_INSTALL_HOME / data / pg_tblspcサブディレクトリの内容をリストすることによって、表領域のOIDと対応するディレクトリへのソフトリンクを見つけることができます。
OIDは 、ディレクトリ
/ mnt / tablespace_1と
/ mnt / tablespace_2にそれぞれ
16644と
16645です。後で前述の例で示したものと同じ場所に表領域をリストアする場合は、BART構成ファイルに次のエントリが含まれている必要があります。
注:この例では、表スペース使用の影響を受けるステップを強調しています。データベースクラスタのバックアップとリストアに必要な完全なプロセスについては、第
5章を参照してください。
BARTバックアップ・カタログ
のバックアップ・サブディレクトリ 1447709811516 内で、表領域のデータは、次のようにファイル名
16587.tar.gzおよび
16588.tar.gzとともに格納されます。
リモートホストでは、 / opt / restore_tblspc_1および
/ opt / restore_tblspc_2 ディレクトリが作成され、適切な所有権とアクセス権が次のように割り当てられます。メインのデータベースクラスタは、
/ opt / restoreにリストアされます。
BART構成ファイル
の tablespace_pathパラメータを
設定して、 表領域のディレクトリを指定します。
psqlの クエリでは、リストアされた表領域も表示されます。
• |
[サーバーの名前]。 構成ファイルのサーバー・セクション内のデータベース・サーバーの項目を識別します。これは、BARTを使用してデータベースサーバを参照するための名前です。名前は、BARTサブコマンドオプションで参照されるときに大文字小文字を区別しません。この名前の小文字変換を使用して、このデータベースサーバーのバックアップファイルとWALファイルを格納するためのBARTバックアップカタログにサブディレクトリを作成します。このパラメータは必須です。 |
• |
バックアップ名。ユーザー定義のわかりやすい名前をデータベース・サーバーのバックアップに割り当てるためのテンプレート。テンプレートは、バックアップが取られたときのタイムスタンプ値によって置換される次の変数を含むことができる英数字の文字列である: - 4桁の年 、2)%月 - 2桁の月 、3)%の 1 日目 )%の年間 - 4) %時間 - 2桁時間、5) 分 - 2桁分、および6) %秒 - 2桁秒。バックアップ名にパーセント記号( % )を文字として含めるには、テンプレートで %%を指定します。テンプレートにスペース文字を含める場合でもテンプレート文字列を引用符で囲まないでください。そうでない場合は、囲み引用符がバックアップ名の一部として格納されます。ただし、バックアップ名にスペース文字を使用する場合は、BARTサブコマンドで -iオプションを使用して参照するときに、バックアップ名を引用符で囲む必要があります。バックアップ名の最大許容長は49文字です。このパラメータは、 BACKUPサブコマンドの --backup-nameオプションで上書きすることができます。このパラメータがBART構成ファイルから省略され、ユーザー定義名の --backup-nameオプションが BACKUPサブコマンドで指定されていない場合、バックアップはBARTサブコマンドではBARTによって割り当てられた整数バックアップによってのみ参照できます識別子。 |
• |
ホスト。バックアップ用に構成するデータベースサーバーのIPアドレス。このパラメータは必須です。 |
• |
港。バックアップするデータベース・サーバー・インスタンス(関連するデータベース・クラスタ)を識別するポート番号。このパラメータはオプションです。省略した場合、デフォルトはポート5444です。 |
• |
ユーザー。 BARTが使用するレプリケーションデータベースのユーザ名:1)フルバックアップのためにデータベースサーバへの接続を確立する、2) INITサブコマンドを実行するときにPostgresの archive_command設定パラメータを設定する、3)増分バックアップを取る、このデータベースユーザーはスーパーユーザーでなければなりません。 注: BARTユーザーアカウントとして実行しているときに、このデータベースユーザーを使用するデータベースサーバーへの接続では、パスワードの入力を求める必要がありません。また、 pg_hba.confファイルには、このデータベースユーザ名の複製接続エントリが含まれている必要があります。詳細は、 4.2.2項を参照してください。このパラメータは必須です。 |
• |
archive_command。これはBART archive_commandパラメータです。 BART archive_commandで指定された内容と変数は、 INITサブコマンドが使用されたときに postgresql.auto.confファイルのPostgres archive_command設定パラメータに生成されるアーカイブコマンド文字列になります。 BART設定ファイルのこのBART archive_commandパラメータと、postgresql.confファイルとpostgresql.auto.confファイルのPostgres archive_commandパラメータは、異なる方法で設定される異なる2つの別個のパラメータを参照し、異なる結果の結果を持つことに注意してください。 BART archive_commandとPostgres archive_commandの区別は、指示に従ってこれらのパラメータを設定するときは注意深く観察してください。以下の情報は、BARTの archive_commandパラメータにのみ適用されます。コマンド文字列を一重引用符( ' )で囲みます。 archive_commandパラメータを省略しても、実際に 'scp%p%h:%a /%f'の設定で指定されているかのように、 INITサブコマンドによる使用が行われます。 1) %p - Postgresのアーカイブプロセスで使用されるアーカイブするファイルのパス、2) %h - bart_hostパラメータ設定で置き換えられたもの、3) %a - BARTアーカイブパスで置き換えられたもの、4) %f - Postgresのアーカイブプロセスで使用されるアーカイブファイル名。詳細は、 4.2.3.2項を参照してください。 |
• |
cluster_owner。データベースクラスタを所有するLinuxオペレーティングシステムのユーザーアカウント。これは通常、Oracleデータベース、またはPostgreSQLデータベースクラスタ用とPostgreSQLデータベースとの互換性モードでインストールAdvanced Serverのデータベースクラスタ用 のpostgresとの互換性モードでインストールAdvanced Serverのデータベース・クラスタのため のEnterpriseDBされます。このパラメータは必須です。 |
• |
リモートホスト。バックアップが復元されるリモートサーバーのIPアドレス。このパラメータの値は、 remote_user @ remote_host_addressの形式で指定する必要があります 。remote_userは、BARTユーザーアカウントからのパスワードなしのSSH / SCPログイン接続を受け付けるターゲットデータベースサーバーホスト上のユーザーアカウントであり、ディレクトリの所有者ですバックアップを復元する場所。 remote_host_addressは、リモートホストのIPアドレスです。リモート・ホストにバックアップをリストアする場合、または remote_userとBARTユーザー・アカウントが同じユーザーでないバックアップをリストアする場合は、このパラメータを設定するか、BART RESTOREサブコマンドで -rオプションを使用して指定する必要があります。 |
• |
tablespace_path。表領域をリストアするパスは、 OID = tablespace_pathという形式で指定し ます 。 OID = tablespace_path ... backupを remote_hostパラメータで指定されたようなリモート・ホストにリストアする場合は、表スペース・パスがリモート・ホスト上に存在する必要があります。このパラメータはオプションです。 |
• |
retention_policy。アクティブなバックアップが不要とマークされ、削除の候補になるべき時期を決定します。設定は、 max_number BACKUPS 、 max_number DAYS 、 max_number WEEKS 、または max_number MONTHSのいずれか です 。max_numberは正の整数です。キーワード BACKUPS 、 DAYS 、 WEEKS 、および MONTHSがすべて省略された場合、指定された整数はデフォルトで max_number BACKUPSとして解釈されます。 BART構成ファイルのサーバー・セクション内の retention_policyパラメーターの設定は、グローバル・セクション内の retention_policyの設定をオーバーライドします。サーバーセクションで省略すると、グローバルセクションの retention_policyの設定が使用されます。いずれかのセクションで retention_policyパラメーターが指定されていない場合、 MANAGEサブコマンドを使用すると、追加のバックアップは廃止とマークされません。保持ポリシーを使用したバックアップの管理については、 5.2節を参照してください。 |
• |
xlog_method。 BACKUPサブコマンドによる pg_basebackupの実行中にトランザクションログを収集する方法を決定します。バックアップが完了した後にトランザクションログファイルを収集するように フェッチするように設定します。フルバックアップの作成と並行してトランザクションログを ストリーム配信するように設定し ます 。 streamを使用する場合、このデータベースサーバの postgresql.confファイルの max_wal_senders設定パラメータは、トランザクションログのストリーミングのための追加セッションを考慮する必要があります(つまり、設定は最低 2でなければなりません)。 BART構成ファイルのサーバー・セクションの xlog_methodパラメーターの設定は、グローバル・セクションの xlog_methodの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの xlog_methodの設定が使用されます。いずれかのセクションで xlog_methodパラメーターが指定されていない場合、デフォルトは fetchです。 |
•
|
wal_compression。 MANAGEサブコマンドが呼び出されたときに、BARTバックアップカタログでアーカイブされたWALファイルの圧縮を有効にします。アーカイブされたWALSファイルをgzip形式で圧縮するには、 enabledに設定します。ファイルを圧縮解除したままにするには、 disabledに設定します。 注意: gzip圧縮プログラムは、BARTユーザーアカウントの PATHになければなりません。 注:増分バックアップを実行するデータベースサーバーでは、アーカイブされたWALファイルの圧縮は許可されていません。 BART構成ファイルのサーバー・セクションの wal_compressionパラメーターの設定は、グローバル・セクションの wal_compressionの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの wal_compressionの設定が使用されます。どちらのセクションでも wal_compressionパラメーターが指定されていない場合、デフォルトは 無効です。 WAL圧縮に MANAGEサブコマンドを使用する方法については、第 5.4.7項を参照してください。 |
• |
copy_wals_during_restore。 RESTOREサブコマンドを呼び出すときに、アーカイブされたWALファイルの収集方法を決定します。データベースサーバのアーカイブリカバリに先立って、 有効に設定すると、アーカイブされたWALファイルがBARTバックアップカタログから restore_path / archived_walsディレクトリにコピーされます。データベースサーバのアーカイブリカバリ中に、BARTバックアップカタログからアーカイブされたWALファイルを直接取得するには、 無効に設定し ます 。 recovery.confファイルのBARTによって生成された restore_commandパラメータには、2つのオプションのどちらが使用されているかが反映されています。 -cオプションを指定して RESTOREサブコマンドを実行すると、アーカイブされたWALファイルがBARTバックアップカタログから restore_path / archived_walsディレクトリにコピーされ、BART構成ファイルの copy_wals_during_restoreパラメータの設定が上書き されます。 -cオプションを指定せずに RESTOREサブコマンドを実行すると、アーカイブされたWALファイルのリストア方法が 決まります 。BART構成ファイルのserverセクションの copy_wals_during_restoreパラメータの設定は、グローバル・セクションの copy_wals_during_restoreの設定を上書きします。サーバーセクションで省略された場合は、グローバルセクションの copy_wals_during_restoreの設定が使用されます。いずれかのセクションで copy_wals_during_restoreパラメータが明示的に設定されていない場合、デフォルトは 無効です。詳細は、 5.4.8項を参照してください。 |
• |
allow_incremental_backups。インクリメンタルバックアップ用のWALスキャナの使用を有効にします。 --parentオプションを 指定して BACKUPサブコマンドを呼び出したときに増分バックアップを取ることを許可します。増分バックアップを許可するには、 enabledに設定します。増分バックアップを許可しないようにするには、 無効に設定して、フルバックアップのみを許可します。 allow_incremental_backupsパラメーターを指定しないと、デフォルトは 使用不可になります 。増分バックアップを取るための BACKUPサブコマンドの使用については、 5.4.3項を参照してください。 WALスキャナの実行については、 5.5項を参照してください。増分バックアップの一般的な情報については、セクション 2.2を参照してください。 |
• |
スレッド数。増分バックアップのために BACKUPサブコマンドが呼び出されたときに、データベース・サーバーからBARTバックアップ・カタログへブロックをコピーするワーカー・スレッドの数を指定します。ワーカー・スレッドがデータ・ファイルをデータベース・サーバーからBARTバックアップ・カタログにコピーするフル・バックアップにも同じアプローチが適用されます。 BACKUPサブコマンドが -zまたは -cオプションで指定されている場合、圧縮されたバックアップを並列に提供するために、フルバックアップをとるときに圧縮操作に同じ一連のプロセスが使用されます。 注:圧縮操作は増分バックアップには適用されません。 BACKUPサブコマンドが --thread-countオプションで呼び出された場合、このオプションで指定されたワーカー・スレッドの数は、BART構成ファイル内の thread_countパラメータの設定を上書きします。 BACKUPサブコマンドが --thread-countオプションなしで呼び出された場合、使用されるワーカー・スレッドの数は次のように決定されます 。BART構成ファイルのserverセクションの thread_countパラメータの設定は、グローバル・セクションの thread_countの設定を上書きします。サーバーセクションで省略された場合、グローバルセクションの thread_countの設定が使用されます。いずれかのセクションで thread_countパラメータが指定されていない場合、デフォルトは 1です。 注意:フルバックアップをとるとき、実際のスレッド数が 1にすぎない場合は、 BACKUPサブコマンドで --no-pg_basebackupオプションを指定しないかぎり、 pg_basebackupユーティリティを使用して完全バックアップを 実行します。 |
• |
バッチサイズ。増分バックアップのために BACKUPサブコマンドが呼び出されたときに、変更されたブロックをデータベース・サーバーからBARTバックアップ・カタログにコピーするために使用されるメモリーのブロック数を指定します。各ブロックは8192バイトです。指定できる最大値は 131072 (131072 * 8192 = 1 GB)です。最小許容値は 1です (1 * 8192 = 8192バイト)。 pg_read_binary_file()を実行しているときにサーバーがメモリ不足を起こしていると言うと、設定を減らしてください。 BART構成ファイルのサーバー・セクション内の batch_sizeパラメーターの設定は、グローバル・セクション内の batch_sizeの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの batch_sizeの設定が使用されます。 batch_sizeパラメーターがどちらのセクションにも指定されていない場合、デフォルト値の 49142 (49142 * 8192 = 3 / 8GB)が使用されます。
|
• |
scan_interval。 BARTバックアップカタログのアーカイブディレクトリにあるWALファイルのスキャンを強制的に実行するまでの秒数を指定します。 BART構成ファイルのサーバー・セクションでの scan_intervalパラメーターの設定は、グローバル・セクション内の scan_intervalの設定をオーバーライドします。サーバーセクションで省略された場合、グローバルセクションの scan_intervalの設定が使用されます。いずれかのセクションで scan_intervalパラメータが指定されていない場合は、デフォルト値の 0が使用されます。つまり、ブルートフォーススキャンは開始されません。 |
• |
説明。データベースサーバーの説明。このパラメータはオプションです。 |
2。 |
MANAGEサブコマンドを 使用して、保存方針に従ってバックアップを分類および管理します。このような機能には、現在の時点で廃止予定とみなされるべきアクティブなバックアップを決定すること、無期限に保存するバックアップを選択すること、および不要なバックアップを物理的に削除することが含まれます。廃止されたバックアップが削除されると、そのバックアップのアーカイブされたWALファイルとともに BACKUPサブコマンドで取得されたバックアップが削除されます。 |
フルバックアップに適用される保存ポリシー管理が増分バックアップにどのように影響するかについては、
5.2.5 項を参照してください。
• |
5.2.2 項では、保存方針に従ってバックアップの状態をマークする概念について説明します。 |
• |
5.2.3 項では、さまざまな種類の保持ポリシーの設定について説明します。 |
• |
5.2.4 項では、バックアップの状態をマークし、選択したバックアップを無期限に保持し、不要なバックアップをリストし、不要なバックアップを削除するなど、バックアップを管理するプロセスについて説明します。 |
注:上記のセクションに示されている例は、BARTバージョン1.1で生成されています。保持ポリシー管理プロセスは現在のBARTバージョンと同じですが、
SHOW-BACKUPSおよび
SHOW-SERVERSサブコマンドの出力には、保持ポリシーに影響を与えないいくつかの追加フィールドが追加されました。
• |
アクティブ。バックアップは、そのサーバーに適用可能な保持ポリシーを満たしています。このようなバックアップは、サーバーの回復安全性を確保するために必要と考えられ、したがって保持する必要があります。 |
• |
廃止されました。バックアップは、そのサーバーに適用可能な保持ポリシーを満たしていません。バックアップは、もはやサーバの回復安全性のために必要ではないと考えられ、したがって削除することができる。 |
• |
キープ。バックアップは、そのサーバーに適用可能な保持ポリシーに関係なく保持されます。バックアップは、サーバーの回復安全にとって重要であると考えられ、したがって、無期限に削除されるべきではありません。 |
• |
冗長性保持ポリシー。 冗長性保持ポリシーは、指定されたサーバに保持する最新のバックアップの最大数に依存します。バックアップの数がその最大数を超えると、最も古いバックアップは廃止されたものとみなされます(keepとマークされたバックアップを除く)。 5.2.3.1項では、このタイプの保持ポリシーについて説明します。 |
• |
リカバリウィンドウの保持ポリシー。 リカバリウィンドウの保存ポリシーは、バックアップをアクティブにしなければならない場合の時間枠(リカバリウィンドウ)に依存します。リカバリウィンドウを定義する境界は、現在の日付/時刻(リカバリウィンドウの終了境界)と、指定された時間(リカバリウィンドウの開始境界)の過去の日付/時刻です。バックアップが取られた日時がリカバリウィンドウ内にある場合(つまり、バックアップ日時がリカバリウィンドウの開始日時以降である場合)、バックアップはアクティブとみなされます。そうでない場合は、古いものとみなされます(keepとマークされたバックアップを除く)。 5.2.3.2項では、このタイプの保持ポリシーについて説明します。 |
特定の時点で
MANAGEサブコマンドを
使用することによってのみ 、活動状態のバックアップが評価され、その状態を保存方針に従って時代遅れに変更する必要があるかどうかを判断することができます。
さらに、オプションが指定されていないか、
-sオプション(データベースサーバを指定する)だけで、アクティブバックアップが評価され、
マーク付けされる (つまり、BARTによって内部的に記録される)
MANAGEサブコマンドが呼び出された場合時代遅れのオプションでの
MANAGEサブコマンドの使用方法については、
5.4.7項を参照してください。
• |
MANAGEサブコマンド を使用して、バックアップ識別子または -iオプションとともに -cオプションを指定します。この特定のバックアップを無期限に 保つには 、 -c keepを使用します。それ以外の場合は -c nokeepを使用します。 |
• |
-c nokeepオプション を使用した場合 、バックアップの状態はactiveに戻されます。次に MANAGEサブコマンドを使用すると、BART構成ファイルの現在の保持ポリシーに基づいて、その状態を古いものに戻す必要があるかどうかを判断するために、バックアップが再評価されます。 |
場合がありますバックアップの現在、マークの状態、その
retention_policy設定に従ってバックアップをマークし、その後、あなたはそれをコメントアウトすることで
retention_policyパラメータを変更したり、無効にするには
retention_policyパラメータは、特定の方法で設定されている、あなたが
管理サブコマンドを実行します現在の
retention_policy設定と矛盾している可能性があります。
• |
オプションを指定しないか、 -sオプションのみを指定し て MANAGEサブコマンドを 実行すると、BART構成ファイルの新しい retention_policy設定に基づいてマークされたステータスがリセットされます。 |
保持ポリシーは 、BART構成ファイルの
retention_policyパラメータ
によって決まります。すべてのサーバでグローバルに設定するには、
4.1節を参照してください。データベースサーバによって設定するには、
4.2.5項を参照してください。
冗長保持ポリシーを使用するには、 retention_policy = max_number BACKUPSを 設定し ます。ここで、
max_numberは、最新のバックアップの最大数を指定する正の整数です。
• |
キーワード BACKUPSは、常に複数の形式(たとえば、 1 BACKUPS )で指定する必要があります。 |
SHOW-SERVERSサブコマンドが表示保持ポリシー]フィールドで3バックアップ冗長性保持ポリシー:
• |
max_number DAYSに 設定すると、開始日時リカバリ・ウィンドウの境界を max_numberで指定された日数で定義し、現在の日付/時刻から時刻を戻します。 |
• |
max_number WEEKSに 設定すると、開始日時リカバリ・ウィンドウの境界を max_numberで指定された週数で定義し、現在の日付/時刻から時刻を戻します。 |
• |
max_number MONTHSに 設定すると、開始日時リカバリウィンドウの境界を max_numberで指定された月の数として定義し、現在の日付/時刻から時刻を戻します。 |
• |
キーワード DAYS 、 WEEKS 、および MONTHSは、常に複数の形式(たとえば、 1 DAYS 、 1 WEEKS 、または 1 MONTHS )で指定する必要があります。 |
-nオプションを指定して
MANAGEサブコマンドを使用
してデバッグモード( -dオプション付き)
でBARTを起動すると、
retention_policy設定と現在の日付/時刻に基づいて計算された回復時間が表示されます。
場合 MANAGEサブコマンドは、2015年4月17日に
-nオプションと一緒にデバッグモードで起動され、次の結果が表示されます。
サーバー acctgの場合、72時間は3日間の復旧ウィンドウに変換されます。
サーバー 開発者の場合、504時間は21日(3週間)の復旧ウィンドウに変換されます。
サーバー hrの場合、2160時間は90日(3か月)の復旧ウィンドウに変換されます。
注: max_number MONTHSの設定の場合、計算された回復期間の合計日数は、現在の日付/時刻から
先月の実際の日数に依存します。したがって、
max_number MONTHSは必ずしも
max_number x 30 DAYSと正確に等しいとは限りません。たとえば、現在の日付/時刻が3月の場合、1カ月の復旧期間は前の月が2月であるため28日に相当するため、3月31日の現在の日付については、しかし、典型的な結果は、回復の開始ウィンドウの境界の月の日が、
MANAGEサブコマンドが呼び出された月の同じ日になるということです。
SHOW-SERVERSサブコマンド
を使用して 、
RETENTION POLICYフィールドにリカバリー・ウィンドウの開始が表示されます。
RETENTION POLICYフィールドに
表示される3日間の復旧ウィンドウの開始は、 2015-04-10で SHOW-SERVERSサブコマンドが呼び出されると、
2015-04-07 14:57:36 EDTになり
ます 。
現在の時点では、 2015-04-07 14:57:36 EDT 以降のバックアップはアクティブと見なされます。
2015-04-07 14:57:36 EDTより前に取られたバックアップは、keepとマークされたバックアップを除いて、廃止されたとみなされます。
RETENTION POLICYフィールドに
表示される3週間のリカバリー・ウィンドウの開始 時刻は、
2015-04-10で SHOW-SERVERSサブコマンドが呼び出されると
2015-03-20 14:59:42 EDTになり
ます 。
現在の時点では、 2015-03-20 14:59:42 EDT 以降のバックアップはアクティブと見なされます。
2015-03-20 14:59:42 EDTより前に取られたバックアップは、キープとしてマークされたバックアップを除いて、古いものとみなされます。
RETENTION POLICYフィールドに
表示される3ヶ月の回復ウィンドウの開始は、 2015-04-10で SHOW-SERVERSサブコマンドが呼び出されたときに
2015-01-10 14:04:23 ESTです。
現在の時点では、 2015-01-10 14:04:23 EST 以降に取得されたバックアップはアクティブと見なされます。
2015-01-10 14:04:23 ESTより前に取られたバックアップは、キープとしてマークされたバックアップを除いて、廃止されたとみなされます。
MANAGEサブコマンドは、BARTのコンフィギュレーションファイルに設定さリテンションポリシーに従ってバックアップを評価し、分類するために使用されます。 BACKUPサブコマンドを使用して最初にバックアップを作成すると、常にアクティブとマークされます。 MANAGEサブコマンドを使用すると、アクティブなバックアップが廃止とマークされることがあります。廃止されたバックアップは削除できます。
• |
5.2.4.1 項では、バックアップ状態と使用されるサブコマンドに応じて、バックアップを削除するためのルールについて説明します。 |
•
|
5.2.4.2 項では、バックアップを無期限に保持としてマークし、無効とマークされたバックアップをリセットしてアクティブな状態に戻す方法を示します。 |
• |
サブコマンドの削除を管理する (つまり、内部BARTによって記録されている)のみのバックアップステータスは、現在マークされているかに依存しています。 BART構成ファイルのretention_policyパラメータの現在の設定は無視されます。 |
• |
DELETEサブコマンドは、もっぱらBARTの設定ファイルのretention_policyパラメータの現在の設定に依存しています。バックアップの現在のアクティブ、廃止、または保持状態は無視されます。 |
したがって、 MANAGEサブコマンドおよび
DELETEサブコマンドの
削除動作は、保持ポリシーのさまざまな側面に基づいています。
• |
-dオプションとサブコマンドを管理するだけで時代遅れとしてマークされたバックアップを削除することができます。この削除は、BART構成ファイルの現在のretention_policy設定に関係なく行われます。 |
• |
BART構成ファイルの retention_policyパラメータで 現在設定されている冗長性保持ポリシーの下で、マークされた状態に関係なくバックアップは、バックアップ識別子または名前が -iオプションで指定されている場合は DELETEサブコマンドで削除できます。指定されたデータベース・サーバーの合計バックアップ数は、 retention_policyパラメーターで現在指定されている冗長バックアップの最大数よりも大きくなります。バックアップの合計数が、指定された最大冗長バックアップ数以下の場合、 -i backupオプションを指定して DELETEを使用して追加のバックアップを削除することはできません。 |
• |
BART構成ファイルの retention_policyパラメータで 現在設定されているリカバリ・ウィンドウ保存ポリシーでは、マークされた状態に関係なくバックアップが行われます。バックアップ識別子または名前が -iオプションで指定されている場合は DELETEサブコマンドで削除できます。バックアップ日時が retention_policyパラメーターで現在指定されているリカバリー・ウィンドウ内にない。バックアップ日時がリカバリ・ウィンドウ内にある場合は、 -i backupオプションを指定して DELETEを使用して削除することはできません。 |
• |
-i allオプション を指定して DELETEサブコマンドを 呼び出すと、保持ポリシーに関係なく、ステータスがアクティブ、廃止、または保持のいずれであるかに関係なく、すべてのバックアップが削除されます。 |
注1:削除は、指定されたデータベースサーバーの合計バックアップ数が、BART構成ファイルの
redundancy_policyパラメーターで現在設定されている
冗長バックアップの最大数より大きい場合にのみ発生します。
注2:削除は、バックアップがBART構成ファイルの
redundancy_policyパラメータで現在設定されているリカバリ・ウィンドウ内にない場合にのみ発生します。
次の例のように、バックアップを無期限に保持するには、
-c keepオプションとともに
MANAGEサブコマンドを
使用します。
次回、オプションを指定しないで、または
-sオプションのみを指定し
て MANAGEサブコマンドを呼び出すと、現行の
retention_policy設定に従ってアクティブバックアップが廃止とマークされることがあります。
注:現在廃止または保持とマークされているバックアップの状態は変更されません。このようなバックアップを再評価して分類するには、
MANAGE -c nokeepオプションを
使用して、その状態を最初にアクティブにリセットする必要があります。詳細については、
5.2.2項を参照してください。
-nオプションを指定し
て MANAGEサブコマンドを実行して、実行中のバックアップを実行して、どのアクティブバックアップが保持ポリシーに従って古いものに変更されるかを確認します。
ドライランで は、バックアップ 1428502049836と
1428422324880は廃止とマークされます。
-nオプションを省略し
た MANAGEサブコマンドを実行して、バックアップのステータスを変更し、古いものとしてマークします。
SHOW-BACKUPSサブコマンド
の STATUSフィールドには、現在のステータスが表示されます。
不要なWALファイルを含む不要なバックアップを物理的に削除するには
、 MANAGEサブコマンドと
-dオプションを使用します。
SHOW-バックアップはサブコマンド現在アクティブとしてマークされ、残りのバックアップを表示するか、維持します:
-nオプションを指定し
て MANAGEサブコマンドを実行すると、保持ポリシーに基づいて廃止予定に変更されるアクティブなバックアップを監視するドライランを実行します。
-nオプションを省略し
た MANAGEサブコマンドを実行して、バックアップのステータスを変更し、古いものとしてマークします。
SHOW-BACKUPSサブコマンド
の STATUSフィールドには、現在のステータスが表示されます。
不要なWALファイルを含む不要なバックアップを物理的に削除するには
、 MANAGEサブコマンドと
-dオプションを使用します。
SHOW-バックアップはサブコマンド現在アクティブとしてマークされ、残りのバックアップを表示するか、維持します:
• |
完全バックアップで MANAGEおよび DELETEサブコマンド によって適用されたアクションは、同じ方法でチェーン内のすべての増分バックアップに適用されます。 |
• |
とき MANAGEサブコマンドが呼び出され、フルバックアップに適用されるステータスは、チェーン内のすべての連続した増分バックアップに適用されます。 |
• |
-c {続けるとサブコマンドを管理 | nokeep}オプションは、 -i backupオプションを使用して増分バックアップのバックアップ識別子またはバックアップ名を指定することはできません。 -i backupオプションは、フルバックアップのバックアップ識別子またはバックアップ名のみを指定できます。オプション-i allを使用することができます。 MANAGEサブコマンドを-c {keep | nokeep}オプションがフルバックアップに適用されている場合、チェイン内のすべての増分バックアップに対して同じ状態が変更されます。 |
• |
バックアップオプションは、すべての連続する増分バックアップとともに増分バックアップは、このようにそのバックアップチェーンを短くする、削除された場合には、増分バックアップのバックアップ識別子またはバックアップ名を指定することが許可されている-i -s サーバとDELETEサブコマンド。 |
冗長保持ポリシーが使用され、 MANAGEサブコマンドが呼び出されると、フルバックアップの数がBART構成ファイルの
retention_policyパラメータで指定された最大数を超えると、最も古いアクティブなフルバックアップのステータスは廃止に変更されます。
retention_policyパラメーターで
指定された数を超えるバックアップの数を判別する場合 、完全バックアップのみがカウントされて比較されます。増分バックアップの数は、この比較の
retention_policyパラメータ設定に対するカウントには含まれません。
次の例では 、3つのバックアップ冗長性保持ポリシーが有効な場合に、次のサーバー構成で示されているよう
に、 MANAGEおよび
DELETEサブコマンドの
使用法を示しています。
バックアップチェーン: 1481749619582 => 1481749651927 => 1481749673603 => 1481749696905
以下で示すように、MANAGEサブコマンドが呼び出されます。
MANAGEサブコマンドは、今4つのアクティブなフルバックアップの合計と、呼び出されます。
-dオプション
を指定して MANAGEサブコマンドを
呼び出すと、古くなったバックアップチェーン全体が削除されます。
リカバリウィンドウの保存ポリシーが使用され、 MANAGEサブコマンドが呼び出されると、フルバックアップの日付/時刻がリカバリウィンドウの外にある場合(つまり、完全バックアップ日時/時刻は、
MANAGEサブコマンドが呼び出された現在の日付/時刻によって定義されたリカバリ・ウィンドウの開始より前であり、BART構成ファイル内の
retention_policyパラメータで設定された時間だけ時間内に戻ります。
次の例は、次のサーバー構成で示されているように、1日の回復ウィンドウ保持ポリシーが有効な場合の
MANAGEおよび
DELETEサブコマンドの
使用方法を示しています。
最初のバックアップチェーン: 1481552078404 => 1481553088053 => 1481553914533 => 1481554802918 => 1481559014359
MANAGEサブコマンドは、最初のフルバックアップ1481552078404リカバリ・ウィンドウから外れたときに呼び出されます。 MANAGEサブコマンドが呼び出されると、 2016-12-13 09:20:03 ESTとなり、1日前の復旧ウィンドウが2016-12-12 09:20:03 ESTに正確に1日早く開始されます。このバックアップは、 2016-12-12 09:14:39 EST (リカバリウィンドウの開始前約 5分半)で行われ、バックアップが不要になりました。
次の例は 、増分バックアップ
での DELETEサブコマンドの
使用法を示しています。最初のバックアップチェーン内の指定された増分バックアップ
1481554802918とそれに続く増分バックアップ
1481559014359は削除されます。
MANAGEサブコマンドが再び呼び出されます。今回は、両方のチェーンの完全バックアップがリカバリウィンドウの開始から外れるため、両方のバックアップチェーンが廃止とマークされます。これは現在2016-12-12 09:55:03 ESTです。
以下は 、バックアップチェーンを無期限に保つための
-c keepオプション付きの
MANAGEサブコマンドの
使用法を示しています 。
-c keepオプションを指定した
MANAGEサブコマンドでは、チェーンのフルバックアップのバックアップ識別子またはバックアップ名を指定する必要があり、増分バックアップは指定しないでください。
次に 、バックアップチェーン
の完全バックアップ 1481553651165と、連続する増分バックアップ
1481554203288および
1481559303348がステータスを保持するように変更されたことが表示されます。
最後に、 -dオプションを指定し
た MANAGEサブコマンドを使用して、古いバックアップチェーンを削除します。
注:以下のセクションでは、サブコマンドオプションを明確にするために、構文図からhelpオプションを省略しています。
CHECK-configサブコマンドは、BARTのコンフィギュレーション・ファイルのパラメータ設定だけでなく、-sオプションが指定されているデータベース・サーバーの構成をチェック。
ときに -sオプションが省略され
、bart_host、BACKUP_PATH、および
pg_basebackup_pathなどのパラメータを含むグローバルセクションでは、チェックされます。
• |
cluster_ownerパラメータは、データベースクラスタディレクトリを所有するユーザアカウントに設定する必要があります。 |
• |
pg_hba.confファイルは、BARTのユーザパラメータで指定されたデータベースのスーパーユーザのための複製エントリを含める必要があります。 |
• |
postgresql.confファイル の archive_modeパラメータを有効にする必要があります。 |
• |
postgresql.auto.confまたは postgresql.confファイル の archive_commandパラメータを設定する必要があります。 |
• |
増分バックアップを実行するデータベースサーバーでは、BART構成ファイル の allow_incremental_backupsパラメーターを有効にする必要があります。 |
必要な設定が正しく設定されていない場合CHECK-CONFIGサブコマンドはエラーメッセージを表示します。
-s 、--
server server_name
server_nameは、適切な構成のためにチェックされるデータベースサーバーの名前です。このオプションを省略すると、BART構成ファイルのグローバルセクションの設定がチェックされます。
INITサブコマンドは、BARTバックアップカタログのディレクトリを作成します。 INITは、BART設定ファイルのサーバセクションのBART archive_commandパラメータの設定に基づいて、Postgresのarchive_command設定パラメータを設定します。 INITサブコマンドは、BART backupinfoファイルも再構築します。
注: BART
BACKUPサブコマンドの実行中に
INITサブコマンドを呼び出さないでください。バックアップ処理の影響を受けるバックアップは、
INITサブコマンドによってスキップされ無視されます。
とき INITサブコマンドが呼び出され、いくつかの異なるアクションを同時に実行することができます。以下は、特定の条件およびオプションの下で実行されるアクションをまとめたものです。
とき INITサブコマンドが呼び出され、次のアクションが常に実行されています。
• |
-sオプションで 指定されたサーバー 、または -s allが指定されている場合、または -sオプションが省略されている場合はすべてのサーバーに対して、BARTバックアップカタログディレクトリ構造は archived_walsサブディレクトリまで完了します。 |
とき INITサブコマンドは、-rオプションなしで起動され、以下のアクションが常に実行されています。
• |
-sオプションで指定されたサーバ、または -s allが指定されている場合、または -sオプションが省略されている場合は すべてのサーバに対して 、Postgresの archive_command設定パラメータを設定しようとします。 archive_commandパラメータがすでに設定されている場合(つまり、 にarchive_commandは postgresql.confファイルや postgresql.auto.confファイルのいずれかでコマンド文字列に設定されている)、その後、既存の にarchive_command設定はBARTに置き換えされていない場合を除き設定 にarchive_command -oオプションも指定されています。詳細は、 4.2.3.2項を参照してください。 |
-rオプションを指定し
て INITサブコマンドを起動すると、次のアクションが常に実行されます。
• |
-sオプションで 指定したサーバー 、または -s allを指定した場合、または -sオプションを省略した場合はすべてのサーバーに対して、すべてのバックアップに対してbackupinfoファイルが再作成されます。 -iオプションを指定すると、backupinfoファイルが指定されたバックアップ用に再作成されます。 |
とき INIT -rが起動され、BARTは、バックアップディレクトリの内容を使用してbackupinfoファイルを再構築します。
注:バックアップがユーザー定義のバックアップ名で最初に作成され、
INIT -rオプションがそのbackupinfoファイルを再構築すると、ユーザー定義のバックアップ名は使用できなくなります。したがって、将来のバックアップへの参照では整数バックアップ識別子を使用する必要があります。
-s 、--
server { サーバー名 |すべて }
server_nameは、
INITアクションが適用されるデータベース・サーバーの名前です。
allが指定されている場合、またはオプションが省略されている場合、アクションはすべてのサーバーに適用されます。
既存の、アクティブPostgresのオーバーライド postgresql.confファイルやBART設定ファイルでBART
にarchive_commandパラメータを使用して
postgresql.auto.confファイル内
にarchive_command構成パラメータの設定を。
INIT生成アーカイブコマンド文字列は、
postgresql.auto.confファイルに書き込まれます。
注意: にarchive_mode構成
パラメータが
オフに設定されている場合は
、-oオプションは、Postgresが
にarchive_commandが現在
postgresql.confの中にも
、PostgreSQLの設定されていない場合でも、BART
にarchive_command BART構成ファイル内のパラメータ使用
にarchive_commandを設定するために使用する必要があります
.auto.conf 。
-i 、--
backupid { backup_id | バックアップ名 |すべて }
backup_idは整数のバックアップ識別子です。
backup_nameは、バックアップ用のユーザー定義の英数字名です。
allを指定した場合、またはオプションを省略すると、-sオプションで指定されたデータベースサーバのすべてのバックアップのbackupinfoファイルが再作成されます。
-iオプションは、
-rオプションとのみ使用できます。
次の例では、BARTバックアップカタログディレクトリを完成させ、デフォルトのBARTアーカイブコマンドフォーマット(
scp%p%h:%a /%f)を使用して
Postgresの archive_commandを設定します。デフォルトのBARTアーカイブコマンドフォーマットは、BART
archive_commandパラメータが明示的に含まれていないか、またはBARTコンフィギュレーションファイルのサーバセクション内にコマンド文字列が割り当てられていない場合に使用されます。
次のようにデータベース・サーバ内にarchive_modeとにarchive_commandのパラメータが設定されています。
INITサブコマンドが呼び出されます。 archive_modeがオンで 、 archive_commandが設定されていないため、 -oオプションは不要です。
次のようにデータベース・サーバ内にarchive_modeとにarchive_commandのパラメータが設定されています。
INITサブコマンドは、現在のPostgres にarchive_command設定を上書きするには-oオプションで呼び出されます。
BACKUPサブコマンドは、フルバックアップまたは増分バックアップを作成するために使用されます。
バックアップは、 backup_path / server_name / backup_idで
構成される ディレクトリに保存され ます。ここで、
backup_pathはBART構成ファイルの
backup_pathパラメータに割り当てられた値、
server_nameは構成ファイルにリストされているデータベースサーバーの小文字名、
backup_idはBARTによって特定のバックアップに割り当てられた整数、バックアップ識別子。
一方で BACKUPサブコマンドが進行中で、他のプロセスがアクセスしたり、影響を受けたバックアップを妨害する許可されません。したがって、バックアップの進行中に発行される次のサブコマンドは、影響を受けるバックアップ(
INIT 、
SHOW-BACKUPS 、
VERIFY-CHKSUM 、
MANAGE 、および
DELETE)をスキップして無視します。
注:バックアップ・ファイルをコピーする前に使用可能な十分なディスク・スペースがないかどうかをチェックして警告するこの機能は、
BACKUPサブコマンドで提供されますが、
RESTOREサブコマンドにはこの機能はありません。したがって、使用可能なディスク容量が不足している場合、ファイルのコピー中に
RESTOREサブコマンドを実行するとエラーが発生する可能性があります。
で postgresql.confファイル 、そうしないと
、BACKUPサブコマンドの使用中に次のエラーが発生する可能性があり
、wal_keep_segments設定
パラメータが十分大きな値に設定されている確認してください。
wal_keep_segments設定パラメータを
低く設定すると、BART
BACKUPサブコマンドがBARTバックアップカタログに保存する前に、いくつかのWALファイルを削除する可能性があります。
wal_keep_segmentsパラメータの
詳細については、 次のURLにある
PostgreSQL Core Documentationを参照してください。
BART構成ファイルで、パラメータ設定 xlog_method = streamが特定のデータベースサーバーに適用されている場合、バックアップの作成と並行してトランザクションログのストリーミングがそのデータベースサーバーに対して実行されます。そうでない場合、バックアップが完了するとトランザクションログファイルが収集されます。
xlog_methodのグローバル設定については、
4.1節を参照してください。データベースサーバによる
xlog_methodの設定については、
4.2.5項を参照してください。
注:トランザクションログストリーミング方式を使用する場合、プレーンテキストバックアップ形式の
-F pオプションは、
BACKUPサブコマンドで指定する必要があります。
-s 、--
server { サーバー名 |すべて }
server_nameは、BART構成ファイルで指定されたとおりにバックアップされるデータベースサーバーの名前です。
allを指定すると、すべてのサーバーがバックアップされます。
注: allが指定されていて、BART構成ファイルにリストされているデータベースサーバーへの接続を開けない場合、そのデータベースサーバーのバックアップはスキップされますが、他のデータベースサーバーのバックアップ操作は続行されます。データベースサーバーの接続に失敗すると、次のエラーメッセージが表示されます。
バックアップファイルの形式を指定します。プレーンテキストの場合は
pを、tarの場合は
tを
使用します。オプションを省略すると、デフォルトはtar形式になります。
注:増分バックアップを取るには、
-F pオプションを指定する必要があります。
-c 、
-- compress -level compression_level
backup_idは、親バックアップの整数、バックアップ識別子です。
backup_nameは、親バックアップのユーザー定義英数字名です。インクリメンタルバックアップを実行するには、このオプションを指定します。親は、現在インクリメンタルバックアップが呼び出される前に取られたバックアップです。親バックアップは、完全バックアップまたは増分バックアップのいずれかにすることができます。インクリメンタルバックアップはプレーンテキスト形式でしか実行できないため、
-F pオプションも指定する必要があります。
注:増分バックアップは、スタンバイ・データベース・サーバーでは実行できません。増分バックアップの詳細については、第
2.2項を参照してください。
このオプションは、BART構成ファイルのserverセクションの
backup_nameパラメータ
よりも優先されます。
--backup-nameオプションが指定されておらず、
backup_nameパラメータがBART設定ファイルのこのデータベースサーバに設定されていない場合、バックアップは他のBARTサブコマンドでBARTによって割り当てられた整数バックアップ識別子でのみ参照できます。
場合 --thread-countオプションを指定すると
、number_of_threadsは、ワーカースレッドの数は、バックアップ用のブロックをコピーするには、並列に実行することです。
--thread-countオプションを省略すると、このデータベースサーバに適用可能なBART設定ファイルの
thread_countパラメータが使用されます。このデータベースサーバーで
thread_countが有効になっていない場合は、BART構成ファイルのグローバルセクションの
thread_count設定が使用されます。これも設定されていない場合、デフォルトのスレッド数は
1です。
thread_countパラメータの詳細は、
4.1および
4.2.5項を参照してください。
完全バックアップをとるために
pg_basebackupを使用することを
指定します。実際のスレッド数の数は、BART設定ファイルの
thread_countパラメータで与えられているように無視されます(
4.1節と
4.2.5節を参照)。
注意:フルバックアップをとるとき、実際のスレッド数が
1より大きい場合、--
with-pg_basebackupオプションが指定されていない限り、
pg_basebackupユーティリティは完全バックアップを取るために使用されません(並列ワーカースレッドが使用されます)。
BACKUPサブコマンド。
完全バックアップをとるために
pg_basebackupを使用しないことを
指定します。
注意:フルバックアップをとるとき、実際のスレッド数が
1にすぎない場合は、
BACKUPサブコマンドで
--no-pg_basebackupオプションを指定しないかぎり、
pg_basebackupユーティリティを使用して完全バックアップを
実行します。
ストリーミングを使用する場合は
、 -F pオプションを
BACKUPサブコマンドで指定する必要があります。
SHOW-SERVERSサブコマンドは、BARTの設定ファイルにリストされた管理データベースサーバの情報を表示します。
-s 、--
server { サーバー名 |すべて }
server_nameは、BART構成情報が表示されるデータベース・サーバーの名前です。
allを指定した場合、またはオプションを省略すると、すべてのデータベースサーバの情報が表示されます。
SHOW-バックアップはディスプレイに管理するデータベースサーバーのバックアップ情報をサブコマンド。
[-i { backup_id | バックアップ名 |すべて } ]
注: BART
BACKUPサブコマンドの実行中に
SHOW-BACKUPSが呼び出されると、バックアッププロセスの影響を受けたバックアップは、表示されたバックアップ情報の進行状況を示します。
-s 、--
server { サーバー名 |すべて }
server_nameは、バックアップ情報が表示されるデータベース・サーバーの名前です。
allを指定するか、オプションを省略すると、すべてのデータベースサーバのバックアップ情報が表示されます。
-i 、--
backupid { backup_id | バックアップ名 |すべて }
backup_idは整数のバックアップ識別子です。
backup_nameは、バックアップ用のユーザー定義の英数字名です。
allを指定するか、オプションを省略すると、関連するデータベースサーバのすべてのバックアップ情報が表示されます。
VERIFY-CHKSUMサブコマンドは、指定されたデータベース・サーバーまたはすべてのデータベース・サーバのフルバックアップと任意のユーザー定義の表領域のMD5チェックサムを検証します。
[-s { server_name |すべて } ]
[-i { backup_id | バックアップ名 |すべて } ]
VERIFY-CHKSUMサブコマンドは、プレーンな形式のバックアップには適用されません。これは、tar形式のバックアップにのみ使用されます。
注: BART
BACKUPサブコマンドの実行中に
VERIFY-CHKSUMが呼び出されると、バックアッププロセスの影響を受けるバックアップはスキップされ、
VERIFY-CHKSUMサブコマンドによって無視されます。
-s 、--
server { サーバー名 |すべて }
server_nameは、tarバックアップ・チェックサムが検証されるデータベース・サーバーの名前です。
allを指定した場合、または
-sオプションを省略した場合、チェックサムはすべてのデータベースサーバで検証されます。
-i 、--
backupid { backup_id | バックアップ名 |すべて }
backup_idは、チェックサムがすべてのユーザー定義の表領域とともに検証されるtar形式のフルバックアップの整数、バックアップ識別子です。
backup_nameは、フルバックアップのユーザー定義の英数字名です。
allを指定した場合、または
-iオプションを省略した場合は、関連するデータベースサーバのすべてのtarバックアップのチェックサムが検証されます。
サブコマンド評価し、マークを管理し、保存ポリシーに基づいたバックアップを削除します。また、 MANAGEサブコマンドは、 wal_compressionパラメーターに基づいて、アーカイブされたWALファイルに対して圧縮を呼び出します。
-i { backup_id | バックアップ名 |すべて } ]
注: BART
BACKUPサブコマンドの実行中に、
MANAGEサブコマンドを呼び出さないでください。バックアップ処理の影響を受けるバックアップは、
MANAGEサブコマンドによってスキップされ無視されます。
保持ポリシーの適用は 、BART構成ファイルの
retention_policyパラメータに
依存します。保存方針に従ってバックアップを評価する、状態をマークする、不要なバックアップを削除するなどのバックアップの管理は、
MANAGEサブコマンドを使用して実行されます。保持ポリシー管理の詳細については、セクション
5.2を参照してください。
とき MANAGEサブコマンドが呼び出され、いくつかの異なるアクションを同時に実行することができます。以下は、特定の条件およびオプションの下で実行されるアクションをまとめたものです。
オプションを指定しないで
MANAGEサブコマンドを呼び出した
場合、または
すべてのデータベースサーバまたは特定のデータベースサーバを指定する
-sオプションのみを指定
した場合は、次の処理が実行されます。
• |
-sオプションで 指定されたサーバー 、または -s allが指定されているか、 -sオプションが省略されている場合はすべてのサーバーに対して、アクティブなバックアップは保存方針に従って廃止とマークされます。 |
とき MANAGEサブコマンドは
-sオプション以外の他のオプションを指定して起動され、次のアクションが実行されます。
• |
で指定されたサーバーの場合 、-sオプション、またはすべてのサーバーの -sすべてが指定されているか 、-sオプションが省略された場合は、実行されたアクションは、他の指定されたオプション(つまり、古いバックアップを一覧表示する -lで、によって決定されます - dは古くなったバックアップを削除し、 -cはバックアップをアクティブな状態に保つか戻すか、 -nは任意のアクションを実行します)。 |
• |
-cオプションが指定されているか、または copy_wals_during_restore BART設定パラメータの有効な設定がデータベースサーバで有効になっている 場合、 RESTOREサブコマンドが呼び出されると、次のアクションが発生します。圧縮されている場合、アーカイブされたWALファイルはBARTバックアップカタログとWALファイルを復元する場所がBARTホストに関連するリモートホスト上にある場合、アーカイブされたWALファイルはネットワーク経由でリモートホストに圧縮形式で送信されますが、gzip圧縮プログラム RESTORE操作を実行するときにリモートホストにログインするために使用されるリモートユーザーアカウントの PATHでアクセス可能です。このリモートユーザーは、BART構成ファイル( 4.2.5項を参照)または RESTORE -rオプション( 5.4.8項を参照)の remote_hostパラメータで指定します。圧縮されたWALファイルを送信すると、ネットワークトラフィックが減少します。圧縮されたWALファイルがネットワーク経由で送信された後、 RESTOREサブコマンドはポイントインタイムリカバリ操作用のファイルを解凍します。 |
• |
-cオプションを指定せずに RESTOREサブコマンドを実行した ときに、 copy_wals_during_restore BART構成パラメータの無効設定がデータベースサーバーで有効になっている場合、 RESTORE操作に必要な圧縮されアーカイブされたWALファイルはBARTバックアップカタログで解凍されます。圧縮解除されたWALファイルは、データベースサーバのアーカイブリカバリが開始されるときに、 recovery.confファイルの restore_commandによってリモートホストにストリーミングされます。 |
-s 、--
server { サーバー名 |すべて }
server_nameは、アクションが適用されるデータベース・サーバーの名前です。
allが指定された場合、または
-sオプションが省略された場合、アクションはすべてのデータベースサーバに適用されます。
-c 、--
change-status {keep |いいえ
バックアップの状態を無期限に保持
する ように
変更します 。
nokeepを指定すると、現在のマークされたステータスにかかわらず、バックアップのステータスをアクティブなステータスに戻すことができます。その後、バックアップを再評価し、後で
MANAGEサブコマンドを使用することにより、保存方針に従って廃止にマークすることができます。
注: -cオプションを使用する場合は、
-iオプションも指定する必要があります。
-i 、--
backupid { backup_id | バックアップ名 |すべて }
backup_idは整数のバックアップ識別子です。
backup_nameは、バックアップ用のユーザー定義の英数字名です。
allを指定した場合、アクションはすべてのバックアップに適用されます。
注: -iオプションは、
-cオプションとのみ使用する必要があります。
場合 MANAGEサブコマンドが呼び出され、次のメッセージがWALファイル圧縮が行われていることを示す表示されます。
RESTOREサブコマンドは、指定されたディレクトリの場所に指定されたデータベース・サーバーのバックアップとそのアーカイブWALファイルを復元します。適切なRESTOREオプションを指定すると、リカバリー構成パラメーターを含むrecovery.confファイルが生成され、特定の時点のリカバリーが実行されます。
[-i { backup_id | バックアップ名 }]
[-r remote_user @ remote_host_address ]
[{-x target_xid | -g target_timestamp }]
注: 増分バックアップをリモート・データベース・サーバーにリストアするときの特別な要件 については、第 2.2.5.2 項を参照してください 。
注:バックアップを復元するホストに、バックアップ用の十分なディスクスペースとそのアーカイブWALファイルが含まれていることを確認してください。
RESTOREサブコマンドには、バックアップファイルをリストアする前に十分なディスク容量があるかどうかを検出する機能がありません。したがって、使用可能なディスク容量が不足している場合、ファイルのコピー中に
RESTOREサブコマンドを実行するとエラーが発生する可能性があります。
ステップ1:リストア操作を実行するPostgresデータベースサーバを停止します。
ステップ2:データディレクトリの
pg_xlogサブディレクトリを
調べ 、まだアーカイブされていないWALファイルをBARTバックアップカタログ(
backup_path / server_name / archived_wals )に
保存してください 。
手順3:現在のデータディレクトリまたは新しいディレクトリに復元するかどうかを決定します。
手順4:手順3で説明した表領域と同じプロセスを実行します。BART構成ファイルの
tablespace_pathパラメータには、表領域データ・ファイルをリストアする表領域ディレクトリ・パスが含まれている必要があります。詳細は、
4.2.4項を参照してください。
ステップ5:リストア操作の実行に使用するタイムラインIDを特定します。
手順6:リストア操作に使用するバックアップを特定し、バックアップIDまたはバックアップ名を取得します。最新の(つまり最新の)バックアップを使用する場合は、
-iオプションを省略することができ、
RESTOREサブコマンドはデフォルトでそのバックアップを使用します。
手順7: BART
RESTOREサブコマンドを実行します。
任意の場合 -t timeline_id、-X target_xid、または
-g target_timestampオプションが与えられ、その後
、recovery.confのファイルが指定したオプションに対応するリカバリ設定パラメータを用いて生成されます。つまり、データベースの再起動時にポイントインタイムリカバリが実行されます。
どれ場合は -t timeline_id、-x target_xid、および
-g target_timestampオプションが与えられていないし、何の
recovery.confのファイルが生成されません。つまり、バックアップのみが復元され、ポイントインタイムリカバリは実行されません。
使用 BARTで使われるコマンドを表示するには
、--debugオプションを選択します。
注:無効な値がオプションに指定された場合、無効なオプションの組み合わせが指定されている場合
(-x target_xidと
-g target_timestampの両方
のオプションが与えられている場合など)、または、エラーメッセージがBARTによって生成されません。無効なオプションは受け入れられ、
recovery.confファイルに渡されます。このファイルは、再起動時にデータベースサーバーによって処理されます。
注意: -cオプションが指定されている場合、または
copy_wals_during_restore BART設定パラメータの有効な設定がこのデータベースサーバで有効な場合は、次の操作が行われます。
• |
場合は recovery.confのファイルが生成され、 このrestore_commandパラメータで設定したコマンド文字列は、として restore_pathの親ディレクトリにこの archived_walsサブディレクトリの相対からWALファイルを取得します。 このrestore_command =「cpはarchived_wals /%fが%P」 |
ステップ8:ステップ2の保存されたWALファイルを
restore_path / pg_xlogサブディレクトリにコピーします。
手順9:復元されたデータベースクラスタの復元されたディレクトリとデータファイルを、ディレクトリ
restore_pathで検査します。
手順10: 1つが生成されている場合は、
restore_pathディレクトリにある
recovery.confという名前のリカバリ構成ファイルを調べて、
特定時点のリカバリ操作のパラメータ設定を確認します。
BART RESTOREサブコマンドは、
postgresql.confファイルの最後に
archive_mode = offパラメータを追加します。
オリジナルの archive_modeパラメータは、
postgresql.confファイルの最初の場所にあり、最後の設定を使用しています。
ステップ12:データベースサーバを起動してリカバリを開始します。完了後、データベース・サーバーのログ・ファイルを調べて、リカバリーが正常に行われたことを確認します。
注意:元のデータベースクラスタとは異なるデータベースクラスタディレクトリにバックアップが復元された場合、データベースクラスタの場所に依存する特定の操作は、サポートするサービススクリプトが更新されていない場合、復元されました。
注意: RHEL 7 / CentOS 7のAdvanced Server 9.6のサービスユニットファイルを変更する前に、「
EDB Postgres Advanced Server 9.6インストールガイド」の 3.5.2「CentOSまたはRedHat 7.xでのデータディレクトリの場所の変更」の手順を参照してください。 。 RHEL 7 / CentOS 7のAdvanced Server 10については、「
EDB Postgres Advanced Server 10インストールガイド」の 3.3.3項の同じトピックを参照してください。
-s 、--
server server_name
-p 、--
restore-path restore_path
restore_pathは、データベース・サーバーのバックアップをリストアするディレクトリー・パスです。ディレクトリは空で、適切な所有権と特権が割り当てられている必要があります。
-i 、--
backupid { backup_id | バックアップ名 }
backup_idは、リストアに使用されるバックアップのバックアップ識別子です。
backup_nameは、バックアップ用のユーザー定義の英数字名です。このオプションを省略すると、デフォルトでは最新のバックアップ(最新のバックアップ)が使用されます。
-r 、
-- remote -host remote_user @ remote_host_address
remote_userは、パスワードなしのSSH / SCPログイン接続を受け入れ、バックアップを復元するディレクトリの所有者であるリモートデータベースサーバーホスト上のユーザーアカウントです。
remote_host_addressは、バックアップを復元するリモートホストのIPアドレスです。このデータベースサーバーの
remote_hostパラメーターがBART構成ファイルで設定されていない場合は、このオプションを指定する必要があります。
注意: BARTユーザー・アカウントが、
-pオプションで指定された
restore_pathディレクトリを所有するオペレーティング・システム・アカウントと同じでない場合は、
restore_pathディレクトリ所有者を指定するために、
remote_host BART構成パラメータまたは
RESTOREサブコマンド
-rオプションを使用する必要がありますBARTホストと同じホスト上のディレクトリにリストアする場合。
remote_hostパラメータの詳細は、第
4.2.5項を参照してください。
number_of_workersは、増分バックアップの変更されたブロックを復元場所にストリーミングするために並行して実行するワーカー・プロセスの数の指定です。たとえば、4つのワーカー・プロセスが指定されている場合、リストア・ホストでは4つの受信プロセスが、BARTホストでは4つのストリーマ・プロセスが使用されます。各ストリーマプロセスの出力は、受信プロセスの入力に接続されています。レシーバが変更されたブロックファイルを必要とする時点に達すると、その変更されたブロックがその入力から取得されます。この方法では、変更されたブロックファイルはリストアホストディスクに書き込まれません。
-wオプションを省略すると、デフォルトは
1ワーカープロセスになります。
-t 、
--target-tli timeline_id
timeline_idは、ポイントインタイムリカバリのためにアーカイブされたWALファイルを再生するために使用されるタイムラインの整数識別子です。
-x 、
-- target -xid target_xid
target_xidは、ポイントインタイムリカバリに含まれるトランザクションまでを決定するトランザクションIDの整数識別子です。 Point-in-Timeリカバリが必要な場合は、
-x target_xidオプションまたは
-g target_timestampオプションのいずれかのみを含める必要があります。
-g 、
-- target -timestamp target_timestamp
target_timestampは、ポイントインタイムリカバリに含まれるポイントまでのポイントを決定するタイムスタンプです。 Point-in-Timeリカバリが必要な場合は、
-x target_xidオプションまたは
-g target_timestampオプションのいずれかのみを含める必要があります。
指定すると、アーカイブされたWALファイルがBARTバックアップカタログからディレクトリ restore_path / archived_walsに コピー されます。 Point-in-Timeリカバリ用の
recovery.confファイルをBARTが生成する場合、
restore_commandは、データベースサーバのアーカイブリカバリ用に
restore_path / archived_walsからWALファイルを取得します。
-cオプションを省略し、BARTの設定ファイルの
copy_wals_during_restoreパラメータは、このデータベース・サーバに適用する方法で有効になっていない場合、デフォルトのアクションは
recovery.confのファイルで
行うrestore_commandを直接アーカイブWALファイルを取得するために生成されていることですBARTバックアップカタログから取得します。
copy_wals_during_restoreパラメータについては、
4.1および
4.2.5項を参照してください。
次の例では、データベースサーバ mktgをタイムスタンプ
2015-12-15 10:47:00まで
/ opt / restoreディレクトリに
リストアします 。
次の例では、 copy_wals_during_restoreパラメータを有効にし
て RESTORE操作を
実行し 、アーカイブされたWALファイルをローカルの
restore_path / archived_walsディレクトリにコピーします。
DELETEサブコマンドは、そのアーカイブWALファイルと一緒に指定したバックアップのBARTのバックアップカタログからサブディレクトリとデータファイルを削除します。
['] { バックアップID | バックアップ名 }、...} [']
注: BART
BACKUPサブコマンドの実行中に、
DELETEサブコマンドを呼び出さないでください。バックアップ処理の影響を受けるバックアップは、
DELETEサブコマンドによってスキップされ無視されます。
-s 、--
server server_name
-i 、--
backupid {すべて| ['] { バックアップID | backup_name }、...} [']}
backup_idは、削除するバックアップの整数、バックアップ識別子です。
backup_nameは、バックアップ用のユーザー定義の英数字名です。複数のバックアップ識別子とバックアップ名をコンマ区切りリストで指定することができます。各コンマの前後に空白がある場合は、リストを一重引用符で囲む必要があります。
allを指定すると、指定したデータベースサーバーのすべてのバックアップとアーカイブされたWALファイルが削除されます。