MSSQLにおける異なるバージョン間のデータ移行手順

MSSQLでは、あるバージョンから別のバージョンにデータを移行する方法が用意されています。本ページでは、2つの方法を説明します。

1. Detach(デタッチ)およびAttach(アタッチ)を使用する方法

推奨: 手順実施前にはDBのフルバックを取得することを推奨します。

  • SQL Server Management Studioにログインします。
  • 移行対象のデータベース(例:adap)を右クリック → タスク → デタッチ
  • デタッチウィザードにおいて、いずれのチェックボックス(Drop Connections および Update Statistics)にもチェックを入れ、OKをクリックします。
  • データベース保存パス(例: C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA) に移動後、.mdf および .LDF ファイル (例: adap.mdf および adap_log.LDF)をコピーします。
  • 2つのファイルを任意の場所に保存します。
  • SQL Server Management Studioにログインします。
  • 移行先のデータベースを右クリック → タスク → アタッチ
  • アタッチウィザードにおいて、追加(Add)をクリックします。
  • 保存した.mdfファイルを選択後、[OK]をクリックします (.LDFファイルは自動的に選択されます).
  • ADAPインストールフォルダー\conf\database_paramsファイルを開き、SQLサーバーの場所、データベース名を更新して保存します。

2. データインポートを使用する方法

推奨: データベースの特定のテーブルデータを別のデータベースに移動することを推奨します。

  • SQL Server Management Studioにログインします。
  • データを移動させたいDB(例:adap_new)を右クリック → タスク → データをインポート(Import Data)
  • インポートウィザードが表示 → Next をクリック
  • データソースウィザードにて、以下を指定します(データソースドロップダウンにて、SQL Server Native Clientを選択します)。
    • サーバー名
    • SSMSにログインする際に使用する認証情報
    • データベース
    • Next をクリック
  • デスティネーションウィザードにて、以下を指定します(データソースドロップダウンにて、SQL Server Native Clientを選択します)。
    • サーバー名
    • SSMSにログインする際に使用する認証情報
    • データベース
    • Next をクリック
  • [テーブルのコピーまたはクエリの指定] → [1つ以上のテーブル/ビューからのデータのコピー] → Next をクリック
  • [ソーステーブルとビューの選択]にて、[ソースからコピーするテーブル]を選択 → Edit Mappingsを使用して左コラムよりテーブルを選択 → 特定テーブルのオペレーションを選択 → Next をクリック
  • [Run Immediately(今すぐ実行)]を選択 → Next をクリック
  • Finish をクリック