Info2softは、ウェブサイトでより快適で適切な閲覧体験を提供するためにCookieを使用しています。 プライバシーポリシー
Loading...
SQL Serverデータベースの移行または複製は、DBAやIT管理者が頻繁に実施する業務の一つです。
ハードウェア更新、災害復旧、クラウド移行、負荷分散、環境クローニングなど、様々な場面でサーバー間で安全かつ効率的にデータベースをコピーする手段が必要となります。
しかし、手法を誤って選択すると以下のリスクが発生します。
本ガイドではMSSQLデータベースを別サーバーへコピーする手法を解説し、4種類の無料手段を比較し、実環境に適した方法の選び方を紹介します。
要点まとめ
SQL Serverデータベースを別サーバーへコピーするには、バックアップ&リストア、デタッチ&アタッチ、データベースコピーウィザード、スクリプト生成の4つの手法が利用可能です。中でもバックアップ&リストアが最も普及しており、安定性に優れ、大容量データベースや異なるSQL Server環境間の移行に対応します。
データベースのコピーは主に下記シナリオで必要となります。
| シナリオ | 目的 |
|---|---|
| ハードウェア更新 | 高性能な計算機またはストレージへ移行 |
| クラウド移行 | オンプレミスからクラウドへの切り替え |
| 災害復旧対策 | 遠隔拠点にデータの冗長環境を構築 |
| 負荷分散 | 読み込み・書き込み業務を分離 |
| コンプライアンス対応 | 機密データを隔離 |
| テスト・開発環境 | データベースのクローンを作成 |
いずれの場合も、データの完全性確保、停止時間の最小化、ログイン情報と権限の整合維持が重要です。
適切な手法の選択は、データベース容量、許容可能な停止時間、環境の複雑さに依存します。
👉 本番環境で運用するシステムの場合、既定の選択肢としてバックアップ&リストアが最も安全です。
下記に実績のある移行手法を記載します。単純なものから企業向けまで分類しています。各手法は複雑さ、自動化機能、必要な停止時間、拡張性が異なるため、データベース規模、業務継続要件、運用目標に合わせて選定してください。
安定性と予測性に優れ、多くの本番環境で活用される最も普及した手法です。
利用に適した場面:
手順1. 完全バックアップを作成
SQL Server Management Studio(SSMS)にて実行:
BACKUP DATABASE YourDatabase
TO DISK = 'D:\backup\YourDatabase.bak'
WITH FORMAT;
手順2. バックアップファイルを移行先サーバーへ転送
.bakファイルは下記手段で転送可能:
手順3. 移行先サーバーでデータベースをリストア
SQL Server Management Studio(SSMS)にて実行:
RESTORE DATABASE YourDatabase
FROM DISK = 'D:\backup\YourDatabase.bak'
WITH MOVE 'YourDatabase' TO 'D:\Data\YourDatabase.mdf',
MOVE 'YourDatabase_log' TO 'D:\Logs\YourDatabase.ldf';
メリット
デメリット
SSMS標準搭載のウィザードで、SQL管理オブジェクト(SMO)を利用し、インスタンス間のデータベースファイルとメタデータ転送を自動化します。
手順1. ウィザード起動:SSMSにて移行元DBを右クリック → タスク → データベースのコピー
手順2. サーバー設定:移行元・移行先サーバーの接続情報と認証情報を指定
手順3. 転送方式選択:高速なデタッチ&アタッチ(停止必要)、またはオンラインSMO方式を選択
手順4. 対象DB選択:コピーまたは移行するデータベースを指定
手順5. 実行またはスケジューリング:即時実行、または後日実行を設定
メリット
デメリット
スキーマとデータを含むT-SQLスクリプトを出力し、移行先サーバーで実行してデータベースを再構築する手法です。
手順1. スクリプト作成:移行元DBを右クリック → タスク → スクリプトの生成
手順2. 詳細オプション設定:ウィザード内の詳細設定から「スクリプト出力対象」を「スキーマとデータ」に変更
手順3. スクリプト保存:単一ファイルとして出力し転送
手順4. 移行先で実行:移行先サーバーへ接続し、スクリプトファイルを実行
手順5. データ検証:実行エラー確認、移行先のデータ完全性を確認
メリット
デメリット
データベースファイルを物理的にサーバー間移動する手法です。
利用に適した場面:
手順1. データベースをデタッチ
EXEC sp_detach_db 'YourDatabase';
手順2. MDFファイル、LDFファイルをコピー
ファイルを移行先サーバーへ移送
手順3. データベースをアタッチ
CREATE DATABASE YourDatabase
ON (FILENAME = 'D:\Data\YourDatabase.mdf'),
(FILENAME = 'D:\Logs\YourDatabase.ldf')
FOR ATTACH;
メリット
デメリット
移行処理自体が完了しても、下記のトラブルが発生する可能性があります。
ログイン情報のマッピングが正しく行われず、ユーザーがアクセスできなくなる場合があります。
ジョブ、アラート、保守プランはバックアップに含まれません。
移行後、データベースユーザーのロール割り当てが消失する可能性があります。
サーバー変更に伴い外部との接続設定が切断されます。
データベースコピー完了後、必ず移行結果を検証してください。
手順1. データベース状態確認
SELECT name, state_desc FROM sys.databases;
手順2. 整合性チェックを実行
DBCC CHECKDB ('YourDatabase');
手順3. アプリケーション接続テスト
アプリケーションが下記動作を実行できるか確認:
手順4. SQL Serverログの確認
警告や処理失敗の記録が存在しないか確認します。
i2Streamは、MSSQLデータベースのサーバー間コピー業務を自動化・可視化し、高い信頼性で効率的に実行可能な強力なデータレプリケーションソリューションです。単なるデータコピーに留まらず、データ移行、災害復旧バックアップ、データ配信、異種データベース同期をカバーする統合的なデータフロー基盤を企業に提供します。
MSSQLデータベースのサーバー間レプリケーションにおいて、i2Streamは主に下記を支援します。
シームレスな異プラットフォームレプリケーション
高い互換性により多様な環境でMSSQLのリアルタイム同期を実現。オンプレミスからクラウドまで複雑なシナリオで、移行元・移行先間でスムーズにデータを移送します。
詳細なデータフロー制御
インスタンス全体から特定の項目まで多段階でレプリケーション範囲を制御可能。強力なフィルタリング、データ変換、ETL機能を備え、データベース全体移行から特定業務データ配信まで、多彩なニーズに合わせてデータフローを柔軟に調整できます。
企業レベルの信頼性と安全性
DDL/DML同期、再開機能、トランザクション整合性機能により、継続レプリケーション中のデータ完全性を保証。独自の論理削除ブロック機能、競合解決メカニズムが本番データを守る安全策となります。
インテリジェントな運用管理
直感的なGUIにより複雑なレプリケーション作業を簡素化。リアルタイム監視、多次元アラート、自動データ比較修復機能と組み合わせ、運用負荷と人的ミスリスクを大幅に低減するスマートな運用基盤を構築します。
i2Streamの詳細を知りたい方はお問い合わせください。技術チームがMSSQLデータベースのサーバー間移行を支援いたします。
Q. SQL Serverデータベースを別サーバーへコピーするには?
A. 環境に応じて、バックアップ&リストア、デタッチ&アタッチ、データベースコピーウィザード、スクリプト生成のいずれかを利用します。
Q. SQL Serverデータベースを移動する最速の手法は?
A. 大容量データベースの場合、一般的にデタッチ&アタッチが高速です。
Q. バックアップ&リストアにログイン情報は含まれますか?
A. 含まれません。ログイン情報やSQLエージェントジョブは別途移行する必要があります。
Q. 停止時間なしでSQL Serverデータベースをコピー可能ですか?
A. レプリケーションまたは企業向け同期専用ツールを利用した場合に限り実現できます。
Q. 移行完了後に確認すべき項目は?
A. データベースの整合性、アプリケーション接続、ユーザー権限を検証してください。
SQL Serverデータベースを別サーバーへコピーする手段として、バックアップ&リストア、デタッチ&アタッチ、データベースコピーウィザード、スクリプト生成といった複数の無料手法が存在します。
各手法はパフォーマンス、必要な停止時間、運用の難易度にトレードオフがあります。
多くの本番環境において、バックアップ&リストアが最も信頼でき、推奨される手法となります。