はい、わかりました。 2008年に実行中のコピーSQL Server 6.5
の存在は不合理です。SQL Server 6.5のアップグレード
つまり、6.5
から2005
に移行するにはどうすればよいですか。直接経路はありますか?私が見つけたドキュメンテーションのほとんどは、6.5
を7
にアップグレードすることを扱っています。
ネイティブのSQL Server
アップグレードユーティリティを忘れて、すべてのオブジェクトとデータをスクリプトから取り除いてゼロから再作成しようとしますか?
私は今週末にアップグレードしようとしていましたが、サーバーの問題でそれを次回に戻しました。だから、今週中にどんなアイデアも歓迎されるでしょう。
更新。これが私のやり方です:
6.5
でデータベースをバックアップしてください。6.5
のマスターに対してSQL Server 2000
のinstcat.sql
を実行します。これにより、SQL Server 2000
のOLEDBプロバイダは6.5
に接続できます。SQL Server 2000
のスタンドアロン"Import and Export Data"
を使用して、OLEDB
を使用して6.5に接続するDTSパッケージを作成します。これにより、すべて6.5
のテーブルが新しい2005
データベースにコピーされました(OLEDB
も使用)。6.5
のEnterprise Managerを使用して、データベースのすべての索引およびトリガーを.sqlファイルにスクリプト化します。- 2005年のManagement Studioで、データベースの新しいコピーに対して.sqlファイルを実行します。
- 6.5のEnterprise Managerを使用して、すべてのストアドプロシージャをスクリプトアウトします。
2005
データベースに対して.sql
ファイルを実行します。数十のsprocsは2005
と互換性がない問題がありました。主にnon-ANSI joins
およびquoted identifier issues
。- これらの問題をすべて修正し、
.sql
ファイルを再実行しました。 6.5
のログインを2005
に再作成し、適切な権限を与えました。
ストアドプロシージャを修正する際にリンス/リピートが少しありましたが(修正するには数百もありましたが)、アップグレードはすばらしく進んでいました。
Query Analyzer
とEnterprise Manager 6.5
の代わりにManagement Studioを使用できることは、驚くべき違いです。 6.5 database
で20-30秒かかったレポートクエリが、修正や新しいインデックスなど何もせずに1〜2秒で実行されています。私はすぐにそのような改善を期待していませんでした。