SQL Server 7データベースをSQL Server 2012に移動するにはどうすればよいですか?


8

SQL Server 7.0からSQL Server 2012にデータベースを移動したいのですが、バックアップと復元には互換性がありません。SQL Server 7.0からエクスポートして2012にインポートする方法はありますか?テーブルだけが必要です-ビューやストアドプロシージャは必要ありません。


1
detach / attachコマンドは、その後互換性レベルを調整しても機能しませんか?
msi77 2013年

回答:


13

解決策1

ETLプロセスを使用してデータをコピーします。これは、データベースにアクセスできる状態でSQL Server 7インスタンスが稼働していることを前提としています。あなたはいくつかのツールを自由に利用できますが、私が見ることができる最も簡単なアプローチは次のとおりです。

  1. すべてのSQL Server 7オブジェクトをスクリプト化し、SQL Server 2012で作成します。SQLServer 7固有の構文がある場合は、スクリプトを調整する必要がある場合があります。
  2. ETLプロセスを使用してデータをコピーします。いくつかの選択肢:

    • BCP -BCPを使用してすべてのテーブルをRAWまたはテキストファイルにダンプし、BCPを使用してそれらをSQL Server 2012オブジェクトにロードします。
    • SQL Server 2012のインポート/エクスポートウィザード-インポート/エクスポートウィザードを使用して、データ転送タスクを作成します。
    • SSIS-これは基本的にインポート/エクスポートウィザードと同じですが、より多くの機能を備えています。

全体として、これは退屈なプロセスになる可能性がありますが、データを1つのデータベースから別のデータベースに直接コピーできます。BCPルートを使用する場合、ダンプファイル用のストレージが必要になりますが、これはデータベースストレージである必要はありません。

解決策2

SQL Server 2005へのアップグレードの中間ステップを使用して、データベースをアップグレードします。これは、SQL Server 2005メディアとそれを立ち上げるサーバーにアクセスできることを前提としています。SQL Server 7は、アップグレードパスがサポートされていないため、SQL Server 2008にアップグレードできませんが、データベースをSQL Server 2005に復元できる場合は、SQL Server 2005バージョンを連続してバックアップし、SQL Server 2012に復元できます。


3
私は非常ソリューション1.上で解決策2をお勧めします
mrdenny

1
それは私がやったことですが、SQL 7> 2000> 2008> 2012を除きます。
XPDA 2013年

1
私は同意します-オプション2は間違いなく最善の策です。この回答を見て、移行とその代わりのいくつかの長所と短所を確認してください。特に、このような場合に当てはまります。そして、7.0を終えて、おめでとうございます!;-)
マイクウォルシュ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.