データベース エンジンのアップグレード

更新 : 2006 年 12 月 12 日

Microsoft SQL Server データベース エンジンを Microsoft SQL Server 7.0 または Microsoft SQL Server 2000 から Microsoft SQL Server 2005 へアップグレードすることができます。サポートされるアップグレード パスについては、「バージョンとエディションのアップグレード」を参照してください。

SQL Server 2005 セットアップ プログラムを使用すると、ユーザーの介入を最小限に抑えながら、以前のバージョンの SQL Server をアップグレードすることができます。ただし、適切な準備を行い、アップグレード プロセスを理解しておくことで、発生する問題の防止または解決をより容易にすることができます。

ここでは、アップグレード プロセスの準備および理解に必要な情報を提供します。内容は以下のとおりです。

  • 既知のアップグレード問題
  • アップグレード前の作業と注意点
  • データベース エンジンを SQL Server 2005 にアップグレードするための手順のトピックへのリンク
  • データベースを SQL Server 2005 に移行するための手順のトピックへのリンク
  • フェールオーバー クラスタに関する注意点
  • アップグレード後の作業と注意点

既知のアップグレード問題

データベース エンジンを SQL Server 2005 にアップグレードする前に、「SQL Server 2005 データベース エンジンの旧バージョンとの互換性」を確認してください。その他の SQL Server コンポーネントの旧バージョンとの互換性については、「旧バージョンとの互換性」を参照してください。

ms143695.note(ja-jp,SQL.90).gif重要 :
SQL Server 2005 のいずれかのエディションから別のエディションへアップグレードする前に、現在使用している機能がアップグレード先のエディションでサポートされているかどうかを確認します。詳細については、「SQL Server 2005 の各エディションがサポートする機能」の該当するコンポーネントのセクションを参照してください。

アップグレード前のチェックリスト

以前の SQL Server バージョンから SQL Server 2005 へのアップグレードは、SQL Server 2005 セットアップ プログラムでサポートされています。また、データベースを以前の SQL Server バージョンから SQL Server 2005 のインスタンスへ移行することもできます。移行は、同じコンピュータ上の SQL Server インスタンス間で行うことも、別のサーバー上の SQL Server インスタンスから行うこともできます。移行オプションには、データベース コピー ウィザードの使用、バックアップ機能と復元機能、SQL Server 2005 Integration Services インポート/エクスポート ウィザードの使用、および一括エクスポート/一括インポート方式があります。

データベース エンジンをアップグレードする前に、必ず以下を実行してください。

SQL Server 2005 へのアップグレードに関連するドキュメントを確認します。

SQL Server 2005 にアップグレードする前に、以下の問題点を確認して、必要に応じて変更します。

  • SQL Server 2000 の 64 ビット版を Microsoft SQL Server 2005 の 64 ビット版にアップグレードする場合は、Analysis Services をアップグレードした後でデータベース エンジンをアップグレードする必要があります。
  • アップグレード対象のインスタンスからすべての SQL Server データベース ファイルをバックアップして、必要な場合はこれらのファイルを完全に復元できるようにします。
  • アップグレード対象のデータベース上で適切なデータベース コンソール コマンド (DBCC) を実行して、データベースの一貫性を確保します。
  • SQL Server コンポーネントおよびユーザー データベースのアップグレードに必要なディスク容量を見積もります。SQL Server 2005 コンポーネントで必要とされるディスク容量については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
  • 既存の SQL Server システム データベース (mastermodelmsdbtempdb) が自動拡張するように構成されていることを確認し、それらが十分なハード ディスク容量を備えていることを確認します。
  • すべてのデータベース サーバーが master データベースにログオン情報を持っていることを確認します。システム ログオン情報は master データベースに格納されるので、データベースを復元するにはこの作業が重要になります。
  • すべての起動ストアド プロシージャを無効にします。アップグレード プロセスでは、サービスの起動および停止はアップグレード中の SQL Server インスタンス上で行われます。起動時にストアド プロシージャを実行すると、アップグレード プロセスをブロックする可能性があります。
  • レプリケーションを停止し、レプリケーション ログが空であることを確認します。
  • SQL Server 2000 データベース エンジンのインスタンスを SQL Server 2005 にアップグレードしても、max worker threads の構成値は変わりません。ただし、アップグレードする前に max worker threads の値を 0 に変更して、データベース エンジンで最適なスレッド数が計算されるようにすることをお勧めします。詳細については、「max worker threads オプション」を参照してください。
  • SQL Server との従属関係を持つすべてのサービスを含むすべてのアプリケーションを終了します。アップグレード実行中のインスタンスにローカル アプリケーションが接続されている場合は、アップグレード操作が失敗する場合があります。詳細については、「SQL Server データベース エンジンのインストールに関するトラブルシューティング」を参照してください。

データベース エンジンのアップグレード

現在インストールされている SQL Server 7.0 または SQL Server 2000 を、SQL Server 2005 へのバージョン アップグレードで上書きすることができます。SQL Server 2005 セットアップの実行時に以前のバージョンの SQL Server が検出された場合は、以前の SQL Server プログラム ファイルがすべてアップグレードされ、以前の SQL Server インスタンスに保存されているすべてのデータが保持されます。また、以前のバージョンの SQL Server Books Online がマシン上に元の状態のまま残ります。以前のバージョンの SQL Server Books Online にアクセスするには、「SQL Server 7.0 の Books Online を起動する方法」、または「SQL Server 2000 の Books Online を起動する方法」を参照してください。

ms143695.Caution(ja-jp,SQL.90).gif注意 :
SQL Server 2005 にアップグレードすると、以前の SQL Server インスタンスは上書きされて、コンピュータ上に存在しなくなります。アップグレードする前に、SQL Server データベースおよび以前の SQL Server インスタンスに関連するその他のオブジェクトをバックアップします。

データベース エンジンをアップグレードするには、SQL Server インストール ウィザード (ユーザー インターフェイス モードの Setup.exe) を使用するか、コマンド プロンプト (Setup.exe) を使用します。

ms143695.Caution(ja-jp,SQL.90).gif注意 :
コンピュータに SQL Server 2000 管理ツールおよび SQL Server 2005 の既定のインスタンスがインストールされている場合は、SQL Server セットアップから SQL Server 2000 の既定のインスタンスをインストールできます。ただし、この操作によってインストール済みの SQL Server 2005 インスタンスが無効になります。そのため、SQL Server 2000 管理ツールと SQL Server 2005 の既定のインスタンスがコンピュータに既に存在する場合は、SQL Server の既定のインスタンスをインストールしないでください。

アップグレード後のデータベース互換性レベル

アップグレードすると、SQL Server 2005 によりデータベース互換性レベルが、直前のバージョンの SQL Server に自動的に設定されます。そのため、SQL Server 7.0 からアップグレードした SQL Server 2000 を SQL Server 2005 にアップグレードすると、互換性レベルは SQL Server 2000 に設定されます。

データベース エンジンを SQL Server 2005 にアップグレードするには

SQL Server 2005 へのデータベースの移行

SQL Server 2005 でバックアップと復元またはデタッチとアタッチの機能を使用して、ユーザー データベースを SQL Server 2005 インスタンスに移行することができます。

ms143695.note(ja-jp,SQL.90).gif重要 :
移行元と移行先両方のサーバーで同一の名前を持つデータベースは移動またはコピーすることができません。このような場合は、"既に存在します" と通知されます。

ユーザー データベースを SQL Server 2005 に移行するには

データベース エンジンのアップグレード時におけるフェールオーバー クラスタリングに関する注意点

SQL Server 2005 フェールオーバー クラスタリングでは、SQL Server インスタンス全体に対して高可用性サポートを実現します。フェールオーバー クラスタは、クラスタの参加ノードである Microsoft Cluster Service (MSCS) クラスタ グループ (リソース グループと呼ばれている) 内の 1 つ以上の物理ディスクの組み合わせです。リソース グループは、SQL Server のインスタンスをホストする仮想サーバーとして構成されます。

SQL Server 仮想サーバーは、ネットワーク上では単独のコンピュータのように見えますが、1 つのノードが使用不可能になった場合に別のノードへのフェールオーバーを提供する機能を持っています。たとえば、ハードウェア障害、オペレーティング システム障害、または計画されたアップグレード時に、フェールオーバー クラスタの 1 つのノード上の SQL Server インスタンスをディスク グループ内の他のいずれかのノードへフェールオーバーするように構成することができます。フェールオーバー クラスタリングを使用すると、システムのダウンタイムを削減して、アプリケーションの可用性を高めることができます。

SQL Server インスタンスを SQL Server 2005 フェールオーバー クラスタにアップグレードするには、アップグレードするインスタンスがフェールオーバー クラスタである必要があります。SQL Server のスタンドアロンのインスタンスを SQL Server 2005 フェールオーバー クラスタにアップグレードするには、新しく SQL Server 2005 フェールオーバー クラスタをインストールし、その後、データベース コピー ウィザードを使用してスタンドアロンのインスタンスからユーザー データベースを移行します。アップグレードの詳細については、「SQL Server 2005 のフェールオーバー クラスタ インスタンスにアップグレードする方法 (セットアップ)」を参照してください。データベースの移行の詳細については、「データベース コピー ウィザードの使用」を参照してください。

フェールオーバー クラスタリングの詳細については、「フェールオーバー クラスタリング」および「フェールオーバー クラスタのインストール」を参照してください。SQL Server 2005 フェールオーバー クラスタへのアップグレードの詳細については、「SQL Server 2005 のフェールオーバー クラスタ インスタンスにアップグレードする方法 (セットアップ)」を参照してください。

データベース エンジンのアップグレード後の作業

データベース エンジンを SQL Server 2005 へアップグレードした後は、次の作業を実行します。

  • 別のエディションから SQL Server 2005 をアップグレードした後は、すべての修正プログラムや Service Pack の更新を、アップグレードした SQL Server インスタンスに再適用する必要があります。
  • サーバーの登録 - アップグレードすると、以前の SQL Server インスタンスのレジストリ設定が削除されます。アップグレード後は、サーバーを再登録する必要があります。サーバーの登録方法の詳細については、SQL Server 2005 Books Online のトピック「サーバーの登録」を参照してください。
  • 統計の更新 - クエリ パフォーマンスの最適化に役立てるために、アップグレードに続いてすべてのデータベース上で統計を更新することをお勧めします。SQL Server 2005 データベースのユーザー定義テーブル内の統計を更新するには、sp_updatestats ストアド プロシージャを使用します。
  • 使用率カウンタの更新 - 以前のバージョンの SQL Server の場合、テーブルごと、およびインデックスごとの行数やページ数の値が正しくならないことがあります。無効な行数やページ数を修正するには、アップグレード後に DBCC UPDATEUSAGE をすべてのデータベースに対して実行することをお勧めします。
  • 新しい SQL Server のインストール内容の構成 - システムの外部からのアクセスを縮小して攻撃可能な領域を減らすため、SQL Server 2005 では、重要なサービスと機能のインストールおよびアクティブ化を選択して行うことができます。SQL Server 2005 の機能をアクティブにする方法の詳細については、「SQL Server セキュリティ構成」を参照してください。

アップグレード前にフルテキストが有効または無効にマーク付けされていたデータベースは、アップグレード後もその状態を維持します。アップグレード後は、フルテキストが許可されているすべてのデータベースで、フルテキスト カタログが再構築され、自動的に生成されます。この処理には、多くの時間とリソースが必要になります。次のステートメントを実行すると、フルテキストのインデックス処理を一時停止することができます。

EXEC sp_fulltext_service 'pause_indexing', 1

フルテキスト インデックスの作成を再開するには、次のステートメントを実行します。

EXEC sp_fulltext_service 'pause_indexing', 0

参照

概念

SQL Server の複数のバージョンの使用
レプリケートされたデータベースのアップグレード

その他の技術情報

旧バージョンとの互換性

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 12 月 12 日

変更内容 :
  • 「データベース エンジンのアップグレード後の作業」で、フルテキスト カタログの再作成に関する項目を削除。フルテキスト カタログの自動再作成に関する段落で、正しい動作を説明。

2006 年 7 月 17 日

追加内容 :
  • サーバーの登録とフルテキスト カタログの再作成に関するトピックへのリンクを追加。