オフラインになるのに数時間の余裕があれば、私はを調べますrsync
。Windowsシステムを使用している場合は、およびcygwin
のパッケージを含むディストリビューションを取得してインストールできます。rsync
ssh
私が最初に行うことは、必要なオフラインの推定時間をできるだけ正確に計算することです。そのために:
cygwin
ソースマシンとデスティネーションマシンの両方でセットアップし、SSHを構成する必要があります(名前を付けて、ほとんどすべての作業を実行するスクリプトがありますssh-host-config
)。ソースサーバーからSSH経由で宛先サーバーに接続できることを確認する必要があります。
.BAK
データベースバックアップファイル全体を宛先サーバーに初めてコピーします。初めて、DBバックアップファイルを圧縮して小さな部分に分割することができます。初めてDBバックアップファイルが作成されたら、ソースdbバックアップファイルを圧縮しないでください。
rsync
データベースバックアップファイルを毎日実行するタスクをプログラムします。パスワードなしで(キーを使用して)宛先サーバーに接続するようにSSHを構成する必要がある場合があります。そのような場合は、ここで要約を、ここで詳細を確認してください。
安定したプロセスを達成したら、数値を調べて、移行日に転送されるバイト数を計算してみてください。
推定バイト数とアップロード/ダウンロード帯域幅レートを使用すると、必要な時間の推定値に到達できるはずです。
私は次の仮定をしています:
- DBは260GBですが、ほとんどすべてのデータが静的であることを願っています。
- データベースの毎日(完全)バックアップを実行できます。
- システムはオフラインであり、最終的なDBバックアッププロセスが開始されると、ロールバック/コミットされる保留中のトランザクションはありません。
これは、rsyncldf
またはmdf
オンラインでのファイルではなく、完全バックアップファイルを対象としていることに注意してください。そうは言っても、この他のDBAスレッドを考慮に入れてください。
上記の一連のメモとコメントの後で、昨年は同じタスクに直面しましたが、dbは小さくなりましたが、他の可能性を調べた後rsync
、もちろんすべてのステップをテストした後、最終的にそれを行いましたテストし、必要な時間を非常に正確に事前に把握します。
あなたのデータベースは大きいので、このアプローチがあなたに最適かどうかはわかりません。