SQL Server 2005/データ移行メモ

グループウェアの移行に伴い、
SQL Server 2005のデータ移行も必要になったのでメモ。

移行元サーバ、移行先サーバは、
ファイアウォールの都合上、直接接続出来ないので、
移行元サーバでバックアップをとり、
それを移行先サーバでリストアする、
という「バックアップ/リストア」な手法をとります。

バックアップ

1, 移行元サーバのManagement Studioを起動。
2, 「データベース」から移行対象を右クリックし、「タスク」→「バックアップ」を選択。
3, 「全般」ページで、バックアップ先を任意の場所に設定。
4, 「オプション」ページで、「既存のすべてのバックアップ セットを上書きする」を選択。
5, 「OK」ボタンをクリックし、バックアップを実行。

ファイル転送

バックアップで出力したファイルを何らかの手段で移行先サーバに転送しておく。

リストア

1, 移行先サーバのManagement Studioを起動。
2, 「データベース」から移行対象を右クリックし、「タスク」→「復元」→「データベース」を選択。
3, 「全般」ページで「復元用のソース」として「デバイスから」を選択。
4, 「...」ボタンをクリックし、転送したバックアップファイルを選択。
5, 「復元するバックアップ セットの選択」で、出てきた行にチェックを入れる。
6, 「オプション」ページで「既存のデータベースを上書きする」にチェックを入れる。※これいらないかも
7, 「OK」ボタンでリストアを実行。

以上で移行完了です。
が、この作業でデータベースの移行を行うと、
そのデータベースに含まれるユーザでSQL Server認証経由のログインが出来なくなってしまいます。
なので、必要であれば最後に以下の作業を実行します。

ログインアカウント設定

1, 移行先サーバのManagement Studioを起動。
2, 「新しいクエリ」を開き、以下のコマンドを実行。

USE [データベース名];
EXEC sp_change_users_login 'Update_one', '[ユーザ名]', '[ユーザ名]';