他のサーバーにデータベースを移動する

SQL Server で他のサーバーにデータベースを移動する手順を紹介します。

概要

SQL Server で他のサーバーにデータベースを移動する場合には、データベースのバックアップを作成し、他のデータベースサーバーでバックアップを復元する方法でも移動ができます。しかし、データベースのバックアップを作成するためのディスク容量や、バックアップ作成のための時間がかかること、元のデータベースを稼働した状態での移行では、データベースの整合性が崩れるなどの問題が起きる場合もあります。この記事では、バックアップを作成せずに直接データベースのファイルを移動してデータベースを他のサーバーに移動する手順を紹介します。

事前準備

操作対象のデータベースのデータファイルを調べておく必要があります。データファールの場所がわからない場合はこちらの手順でデータファイルの場所を調べられます。

手順

Microsoft SQL Server Management Studio を起動します。起動後、作業するデータベースに接続します。左側のツリービューの[データベース]ノードを開き、移動させるデータベースのノードをクリックして選択します。次に、右クリックしポップアップメニューを表示し、[タスク]メニューの[デタッチ]を選択します。
他のサーバーにデータベースを移動する:画像1

[データベースのデタッチ]ダイアログが表示されます。ダイアログ下部の[OK]ボタンをクリックし、データベースをデタッチします。
他のサーバーにデータベースを移動する:画像2

データベースがデタッチされると、ツリービューからデータベースのノードが無くなります。
他のサーバーにデータベースを移動する:画像3

データベースのデータディレクトリを開きます。移動させるデータベースのデータファイルをコピーして新しいサーバーに移動します。移動方法は外付けHDDにコピーして移動しても良いですし、ファイル共有やFTPなどネットワーク経由でコピーしても構いません。
他のサーバーにデータベースを移動する:画像4

新しいサーバーにデータファイルをコピーできました。
他のサーバーにデータベースを移動する:画像5

移動先のSQL ServerのManagement Studioを起動しSQL Serverに接続します。左側のツリービューのサーバーノードの下の[データベース]ノードを選択し、右クリックします。ポップアップメニューが表示されますので[アタッチ]メニューを選択します。
他のサーバーにデータベースを移動する:画像6

[データベースのインポート]ダイアログが表示されます。ダイアログ中央の[追加]ボタンをクリックします。ファイル選択ダイアログが表示されるので、このサーバーにコピーしたmdfファイルを選択します。
他のサーバーにデータベースを移動する:画像7

mdfファイルを追加すると、付随するldfファイルや他の設定ファイルは自動で追加されます。ファイルパス等に問題が無ければ[OK]ボタンをクリックします。
他のサーバーにデータベースを移動する:画像8

データベースがアタッチされると、[データベース]ノードの下にアタッチしたデータベースのノードが表示されます。
他のサーバーにデータベースを移動する:画像9

ユーザーなどの設定

データベースの移動では、ログインユーザーの情報は移動しません。ログインユーザーとデータベースユーザーとの対応付けは別途作成する必要があります。
ログインユーザーの作成はこちらの記事を参照してください。


以上でデータベースの移動は完了です。

AuthorPortraitAlt
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
作成日: 2014-12-22
Copyright © 1995–2025 iPentec all rights reserverd.