40

はい、知っています。SQL Server 6.52008年の実行中のコピーの存在はばかげています。

それが規定されていますが、からに移行するための最良の方法は何6.5ですか2005?直接の道はありますか?私が見つけたドキュメントのほとんどは、へのアップグレード6.5を扱ってい7ます。

ネイティブアップグレードユーティリティを忘れて、SQL Serverすべてのオブジェクトとデータをスクリプト化し、最初から再作成する必要がありますか?

私は今週末にアップグレードを試みるつもりでしたが、サーバーの問題により次の段階までアップグレードが延期されました。ですから、どんなアイデアでもその週の間に歓迎されます。

アップデート。これが私がそれをやった方法です:

  • 問題のデータベースをバックアップし、マスターをオンにし6.5ます。
  • のマスターに対して' SQL Server 2000sを実行します。これにより、のOLEDBプロバイダーがに接続できるようになります。instcat.sql6.5SQL Server 20006.5
  • SQL Server 2000のスタンドアロンを使用"Import and Export Data"してDTSパッケージを作成し、を使用OLEDBして6.5に接続します。6.5これにより、すべてのテーブルが新しい2005データベースに正常にコピーされました(これもを使用しますOLEDB)。
  • のEnterpriseManagerを使用6.5して、データベースのすべてのインデックスとトリガーを.sqlファイルにスクリプト化します。
  • 2005年のManagementStudioで、データベースの新しいコピーに対してその.sqlファイルを実行します。
  • 6.5のEnterpriseManagerを使用して、すべてのストアドプロシージャをスクリプト化します。
  • .sqlデータベースに対してそのファイルを実行し2005ます。数十のsprocに問題があり、と互換性がありません2005。主non-ANSI joinsにとquoted identifier issues
  • .sqlこれらの問題をすべて修正し、ファイルを再実行しました。
  • 6.5のログインを再作成し、2005適切な権限を付与しました。

ストアドプロシージャを修正するときに少しすすぎ/繰り返しがありましたが(修正する手順は数百ありました)、それ以外の場合はアップグレードがうまくいきました。

Query Analyzerの代わりにManagementStudioを使用できることEnterprise Manager 6.5は、驚くべき違いです。で20〜30秒かかっていたいくつかのレポートクエリは6.5 database、変更や新しいインデックスなどを使用せずに、1〜2秒で実行されています。そのような即時の改善は期待していませんでした。

4

4 に答える 4

11

ねえ、私もまだそのキャンプで立ち往生しています。私たちがサポートしなければならないサードパーティのアプリケーションは、最終的に2K5に移行することであるため、ほとんど問題がありません。しかし、私はあなたの痛みを感じます8 ^ D

とはいえ、DBAから聞いたすべてのことから、重要なのは、最初にデータベースを8.0形式に変換してから、2005年に移行することです。このために組み込みの移行/アップグレードツールを使用したと思います。6.5と8.0の間には、6.5から2005に直接移行するよりも解決できる、いくつかの大きなステップがあります。

あなたがまだ知らなかった場合、あなたの最大の苦痛は、DTSがSSISを支持するようになったということです。既存のDTSパッケージを実行するシェルタイプのモジュールがありますが、それらすべてをSSISで手動で再作成する必要があります。これの容易さはパッケージ自体の複雑さに依存しますが、私はこれまでにいくつかの作業を行っており、それらはかなりスムーズになっています。

于 2008-08-01T19:34:49.067 に答える
6

6.5をSQLServer2000にアップグレードできます。SQLServerまたは2000バージョンのMSDEを入手する方が簡単な場合があります。Microsoftには、 6.5から2000への移行に関するページがあります。データベースを2000形式にすると、SQLServer2005は問題なく2005形式にアップグレードできます。

SQL Server 2000をお持ちでない場合は、MSDE2000バージョンをMicrosoftから直接ダウンロードできます。

于 2008-08-04T01:29:18.307 に答える
3

私は決して権威はありませんが、サポートされているパスは6.5から7だけだと思います。確かにそれが最も正しいルートであり、7から2005に直接簡単に移行できると思います。

すべてのオブジェクトのスクリプトを作成することに関しては、(データベースが本当に些細なものでない限り)必然的に何かを見逃してしまうので、これに反対することをお勧めします。

于 2008-08-03T23:56:54.077 に答える
3

Visual Studio 6.0のプロフェッショナルバージョンまたはその他のスーパーエンタープライズバージョンを見つけることができる場合は、MSDE(基本的にはSQL Expressの前身)のコピーが付属しています。MSDE 2000はまだMicrosoftから無料でダウンロードできると思いますが、6.5から2000に直接移行できるかどうかはわかりません。

概念的には、危険に直面することはないと思います。ただし、長年の実践では、すぐには現れないオブジェクト、権限、またはその他のデータベース項目を常に見逃してしまうと言われています。ダンプ全体をスクリプト化できるのであれば、それは良いことです。何かを見逃す可能性が低くなるため、何かを見逃した場合は、スクリプトに簡単に追加して修正できます。疫病のような手動の手順(Enterキーを1回押す以外)は避けます。

于 2008-08-04T00:23:55.690 に答える