ETERNUS SF AdvancedCopy Manager 運用手引書 13.2 - Microsoft(R) Windows(R) 2000 - - Microsoft(R) Windows Server(R) 2003 - |
目次
索引
![]() ![]() |
第10章 SQL Serverデータベースのバックアップとリストア | > 10.4 レプリケーション管理機能による運用 |
SQL Serverのデータベースのバックアップ/リストア方法について説明します。
SQL Serverデータベースのバックアップは以下の手順から構成されます。
同期処理の開始/再開(同期型バックアップを行う場合のみ)
データベースバックアップ
トランザクションログのバックアップ
同期型バックアップによる運用を行う場合、事前に同期処理(EC/REC)を開始または再開しておく必要があります。同期処理の開始は複製開始コマンド(swsrpstartsync)で行います。データベースが複数ボリューム構成である場合は、全てのデータベースボリュームについて処理を実施する必要があります。
■実行例
全てのデータベースボリュームの同期処理を開始/再開します。業務サーバ(DB-SVR)からコマンドを実行します。
C:\>set SWSTGNODE=nodeAGT |
データベースのバックアップは、SQL Serverバックアップ実行コマンド(swsrpbackup_sql)で行います。
AdvancedCopy Managerを使用してデータベースバックアップを実施する場合、トランザクションログの切り捨ては行われません。そのため、バックアップ運用をデータベースバックアップのみで構成する場合においても、トランザクションログの切り捨てのためのログバックアップは定期的に実施してください。詳細については、『SQL Server Books Online』の「トランザクションログの切り捨て」を参照してください。
SQL Serverバックアップ実行コマンド(swsrpbackup_sql)が複数ボリューム構成のデータベースを複製作成コマンド(swsrpmake)によって処理している間にエラーが発生した場合は、その時点で処理を中断します。既に複製処理がなされたボリュームに対しては、エラー原因への対処の後、複製開始コマンド(swsrpstartsync)を使って、同期処理を再開してください。
■実行例
データベースDB01、DB02、DB03のバックアップを実施します。同期型バックアップの場合は、運用状況表示コマンド(swsrpstat)で全てデータベースボリュームの同期処理が等価性維持状態(Execute欄が“100%”)になっていることを確認してください。デバイスマップファイル名がG:\SQLADM\devmap.txtであるとして、業務サーバ(DB-SVR)からコマンドを実行します。
C:\>set SWSTGNODE=nodeAGT |
トランザクションログのバックアップは、SQL Server 2000/2005のEnterprise ManagerまたはTransact-SQLで行います。
SQL Server 2000/2005のデータベースの復旧は、以下の手順から構成されます。
ログファイルのバックアップ(最新時点への復旧を行う場合のみ)
データベースのリストア
データベースのリカバリ(最新時点または特定時点への復旧を行う場合のみ)
最新時点への復旧を行う場合は、ログバックアップを実施してください(NO_TRUNCATE 句を指定した BACKUP LOG ステートメントを実行し、現在アクティブなトランザクション ログをバックアップします)。ログバックアップを実施しなかった場合、または、ログバックアップが実施できない障害の場合は、最新時点への復旧はできません。障害発生前の最新のログバックアップを使用してデータベースリカバリを行ってください。
データベースのリストアは以下の2つの作業を実施することによって行われます。
ファイルの復元
データベースの再作成
あるユーザー(ログイン)の既定のデータベースが、リストア対象のデータベースに設定されている場合は、上記作業を行う前にそのユーザーの既定のデータベースをmasterデータベースに変更する必要があります。この場合のリストア手順は以下のとおりです。
既定のデータベースをリストア対象データベースからmasterに変更する。
「ファイルの復元」作業を実施する。
「データベースの再作成」作業を実施する。
既定のデータベースをmasterからリストア対象データベースに変更する。
既定のデータベースはEnterprise Managerで変更することができます。
サーバー グループを展開し、サーバーを展開します。
[セキュリティ] フォルダを展開し、[ログイン] をクリックします。
詳細ペインで、変更するログインを右クリックし、[プロパティ] をクリックします。
[全般] タブの [データベース] ボックスの一覧で、SQL Serverのインスタンスにログインした後にログインが接続する新しい既定のデータベースをクリックします。(上記の変更方法は、『SQL Server Books Online』の「SQL Serverの管理」→「セキュリティの管理」→「セキュリティ アカウントの管理」→「ログインの変更」の「ログインの既定のデータベースを変更するには」に記載されています)
全データベースファイル(データファイルとログファイル)を復元します。
ログファイルのみの復元はできません。
全データベースファイルの復元は以下の手順で行います。
手順 |
手順名 |
説明 |
---|---|---|
1 |
データベース削除 |
Enterprise Managerでデータベースを削除します。ログの適用を行う場合、「データベースのバックアップと復元ヒストリ」は削除しないようにしてください。誤って削除すると、Enterprise Managerによるログの適用が不可能になります(その場合はTransact-SQLでログを適用してください)。 なお、リストア後のデータベースの所有者は、後述する「データベースの再作成」を実行したユーザーとなります。データベースの再作成を実行するユーザーとリストア前のデータベースの所有者が異なる場合は、データベースの再作成を実行した後、所有者の変更作業を行う必要があります。そのため、データベースの削除を実施する前に、現在のデータベースの所有者を確認し、記録してください。 |
2 |
複製作成コマンドの実施 |
【筐体内バックアップの場合】 【筐体間バックアップの場合】 |
データベースファイルとともにメタデータファイルも復元されます(ファイル識別番号1のデータベースファイルと同一のフォルダに復元されます)。
AdvancedCopy Managerのバックアップボリュームのデータをさらにテープ装置へ退避する運用を行っている場合、リストア実行コマンドを使わずにテープ装置からデータベースボリュームへ直接ファイル復元を行うこともできます。
■実行例(筐体内バックアップの場合)
データベースを削除した後、スナップショット型レプリケーション(OPC)を使用することによって、ファイル復元を行います。業務サーバ(DB-SVR)からコマンドを実行します。
C:\>set SWSTGNODE=nodeAGT |
■実行例(筐体間バックアップの場合)
データベースを削除した後、同期型レプリケーション(REC)を使用することによって、ファイル復元を行います。業務サーバ(DB-SVR)からコマンドを実行します。
C:\>set SWSTGNODE=nodeAGT |
データベースの再作成は、SQL Serverリストア実行コマンド(swsrprestore_sql)で行います。以下のリストア方法を選択できます。
最新時点または特定時点までの復旧
バックアップ時点への復旧
リストア後のデータベースの所有者は、データベースの再作成を実行したユーザーになります。データベースの再作成を実行したユーザーとリストア前のデータベースの所有者が異なる場合は、ストアド プロシージャ:sp_changedbownerを使用して所有者の変更を行ってください。
■実行例
ファイル復元を実施した後、データベースを再作成します。メタデータファイルはD:\SQLSVR\DB01.swsrp-dmp等に復元されますので、このファイル名を指定して、業務サーバ(DB-SVR)からコマンドを実行します。
C:\>C:\Win32App\AdvancedCopyManager\bin\swsrprestore_sql -Xserver VSERVER -Xmeta D:\SQLSVR\DB01.swsrp-dmp DB01 |
最新時点または特定時点までの復旧を行う場合、Enterprise Managerからログを適用してください。操作方法については、『SQL Server Books Online』の「トランザクションログバックアップを適用する方法(Enterprise Manager)」を参照してください。
また、msdbのバックアップ履歴が消失した場合などEnterprise Managerからログ適用を実施できない場合は、Transact-SQLにより、ログ適用を実施してください。操作方法は、『SQL Server Books Online』の「トランザクションログバックアップを適用する方法(Transact-SQL)」を参照してください。
コピー状況の確認は運用状況表示コマンド(swsrpstat)で行います。また、データベースバックアップの履歴はmsdbデータベースに記録されています。最新バックアップ時刻は、Enterprise Managerのツリー画面で対象データベースを右クリック後、「プロパティ」を選択することにより参照できます。
実行中のコピー処理を停止する場合は、複製解除コマンド(swsrpcancel)を使用します。
■実行例
実行中の同期処理を停止します。業務サーバ(DB-SVR)からコマンドを実行します。
C:\>set SWSTGNODE=nodeAGT |
AdvancedCopy Managerでは、Microsoft Clustering Service(MSCS)によるクラスタシステム運用をサポートしています。AdvancedCopy Managerにおけるクラスタ運用に関する一般的な情報については、「クラスタ運用時の注意事項」を参照してください。
目次
索引
![]() ![]() |