次の方法で共有


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

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

  • アップグレードに関する既知の問題

  • アップグレード前の作業と注意点

  • データベース エンジンをアップグレードするための手順に関するトピックへのリンク。

  • データベースをSQL Serverに移行するための手順に関するトピックへのリンク。

  • フェールオーバー クラスターに関する注意点

  • アップグレード後の作業と注意点

アップグレードに関する既知の問題

データベース エンジンをアップグレードする前に、「データベース エンジンの下位互換性SQL Server確認してください。 サポートされるアップグレード シナリオとアップグレードの既知の問題については、「サポートされているバージョンとエディションのアップグレード」を参照してください。 他のSQL Server コンポーネントの下位互換性コンテンツについては、「下位互換性」を参照してください。

重要

SQL Server のいずれかのエディションから別のエディションへアップグレードする前に、現在使用している機能がアップグレード先のエディションでサポートされているかどうかを確認します。

Note

SQL Server Enterprise エディションの以前のバージョンから SQL Server 2014 にアップグレードする場合は、Enterprise Edition:コア ベースのライセンスとEnterprise Editionのいずれかを選択します。 これらの Enterprise エディションは、ライセンス モードのみが異なります。 詳細については、「 Compute Capacity Limits by Edition of SQL Server」を参照してください。

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

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

データベース エンジンをアップグレードする前に、次の内容を確認してください。

SQL Serverをアップグレードする前に、次の問題を確認し、変更を加えます。

  • SQL Server エージェントが MSX/TSX リレーションシップに参加している SQL Server のインスタンスをアップグレードする場合は、マスター サーバーをアップグレードする前に、ターゲット サーバーをアップグレードします。 ターゲット サーバーより前にマスター サーバーをアップグレードすると、SQL Server エージェントは SQL Server のマスター インスタンスに接続できなくなります。

  • 64 ビット エディションの SQL Server から 64 ビット エディションの SQL Server 2014 にアップグレードする場合は、データベース エンジンをアップグレードする前に Analysis Services をアップグレードする必要があります。

  • アップグレード対象のインスタンスからすべての SQL Server データベース ファイルをバックアップし、必要に応じて復元できるようにします。

  • アップグレード対象のデータベース上で適切なデータベース コンソール コマンド (DBCC) を実行して、データベースの一貫性を確保します。

  • SQL Server コンポーネントおよびユーザー データベースのアップグレードに必要なディスク容量を見積もります。 SQL Server コンポーネントに必要なディスク領域については、「SQL Server 2014 をインストールするためのハードウェアとソフトウェアの要件」を参照してください。

  • 既存の SQL Server システム データベース (master、model、msdb、tempdb) が自動拡張するように構成されていることを確認し、それらが十分なハード ディスク容量を備えていることを確認します。

  • すべてのデータベース サーバーが master データベースにログオン情報を持っていることを確認します。 システム ログオン情報は master データベースに格納されるので、データベースを復元するにはこの作業が重要になります。

  • すべての起動ストアド プロシージャを無効にします。アップグレード プロセスでは、サービスの起動および停止はアップグレード中の SQL Server インスタンス上で行われます。 起動時にストアド プロシージャを実行すると、アップグレード プロセスをブロックする可能性があります。

  • レプリケーションが最新であることを確認してから、レプリケーションを停止します。

  • SQL Server との従属関係を持つすべてのサービスを含むすべてのアプリケーションを終了します。 アップグレード実行中のインスタンスにローカル アプリケーションが接続されている場合は、アップグレード操作が失敗する場合があります。

  • データベース ミラーリングを使用する場合は、「サーバー インスタンスのアップグレード時に、ミラー化されたデータベースのダウンタイムを最小化する」を参照してください。

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

SQL Server 2005 以降のインストールは、バージョンのアップグレードで上書きできます。 SQL Serverセットアップの実行時に以前のバージョンのSQL Serverが検出された場合、以前のSQL Serverプログラム ファイルはすべてアップグレードされ、前のSQL Server インスタンスに格納されているすべてのデータが保持されます。 さらに、以前のバージョンの SQL Server オンライン ブックは、コンピューター上にそのまま残ります。

警告

SQL Server 2014 セットアップ プログラムの実行中に、アップグレード前チェックの実行の一部として、SQL Server インスタンスが停止し、再起動します。

注意事項

SQL Serverをアップグレードすると、以前の SQL Server インスタンスは上書きされて、コンピューター上に存在しなくなります。 アップグレードする前に、 SQL Server データベースおよび以前の SQL Server インスタンスに関連するその他のオブジェクトをバックアップしてください。

データベース エンジンは、SQL Server インストール ウィザードを使用してアップグレードできます。

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

、、および リソース データベースのmodeltempdbmsdb互換性レベルは、アップグレード後に 120 に設定されます。 master システム データベースの互換性レベルは、アップグレード前と同じです。

アップグレード前のユーザー データベースの互換性レベルが 100 以上の場合は、アップグレード後も互換性レベルは変わりません。 アップグレード前に互換性レベルが 90 であった場合、アップグレードされたデータベースでは、互換性レベルは 100 に設定されます。これは、SQL Server 2014 でサポートされている最も低い互換性レベルです。

Note

新しいユーザー データベースには、model データベースの互換性レベルが継承されます。

データベースの移行

SQL Serverのバックアップと復元、デタッチ、アタッチ機能を使用して、ユーザー データベースを SQL Server のインスタンスに移動できます。 詳細については、「バックアップと復元を使用したデータベースのコピー」または「データベースのデタッチとアタッチ (SQL Server)」を参照してください。

重要

ソースや対象サーバーで同じ名前を持つデータベースは移動またはコピーすることはできません。 このような場合は、"既に存在します" と通知されます。

詳細については、「 Use the Copy Database Wizard」を参照してください。

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

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

  • サーバーを再登録します。 サーバーの登録の詳細については、「サーバーの登録」を参照してください。

  • クエリ結果のセマンティクスの一貫性を維持するために、フルテキスト カタログを再作成します。

    SQL Server 2014 では、Full-Textとセマンティック検索で使用する新しいワード ブレーカーがインストールされます。 ワード ブレーカーは、インデックスの作成時とクエリ時の両方に使用されます。 フルテキスト カタログを再構築しない場合は、検索結果の一貫性が失われる可能性があります。 以前のバージョンの SQL Server でワード ブレーカーによって異なる方法で区切られた語句と現在のワード ブレーカーを検索するフルテキスト クエリを発行すると、その語句を含むドキュメントまたは行が取得されない可能性があります。 これはインデックスされたフレーズがクエリとは異なるロジックで区切られたためです。 この問題を解決するには、新しいワード ブレーカーを使用してフルテキスト カタログを再作成 (再構築) し、インデックス時とクエリ時の動作が同一になるようにします。

    詳細については、「 sp_fulltext_catalog (Transact-SQL)」を参照してください。

  • SQL Serverインストールを構成します。 システムのセキュリティを向上させるため、 SQL Server では、主要なサービスと機能を個別にインストールし、有効化できるようになっています。

  • SQL Server 2005 によって生成され、パーティション テーブルとインデックスに対するクエリに適用される USE PLAN ヒントを検証または削除します。

    SQL Serverは、パーティション テーブルとインデックスに対するクエリの処理方法を変更します。 SQL Server 2005 によって生成されたプランに USE PLAN ヒントを使用するパーティション 分割されたオブジェクトに対するクエリには、SQL Server 2014 では使用できないプランが含まれる場合があります。 SQL Server 2014 にアップグレードした後は、次の手順をお勧めします。

    USE PLAN ヒントがクエリ内で直接指定されている場合 :

    1. USE PLAN ヒントをクエリから削除します。

    2. クエリをテストします。

    3. オプティマイザーによって適切なプランが選択されない場合は、クエリをチューニングし、USE PLAN ヒントを必要なクエリ プランと共に指定することを検討します。

    USE PLAN ヒントがプラン ガイドで指定されている場合 :

    1. sys.fn_validate_plan_guide 関数を使用して、プラン ガイドの有効性を確認します。 または、SQL Server Profilerのプラン ガイドの失敗イベントを使用して、無効なプランをチェックすることもできます。

    2. プラン ガイドが有効でない場合は、プラン ガイドを削除します。 オプティマイザーによって適切なプランが選択されない場合は、クエリをチューニングし、USE PLAN ヒントを必要なクエリ プランと共に指定することを検討します。

    USE PLAN ヒントがプラン ガイドで指定されている場合、無効なプランが原因でクエリが失敗することはありません。 この場合、USE PLAN ヒントを使用せずにクエリがコンパイルされます。

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

EXEC sp_fulltext_service 'pause_indexing', 1;  

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

EXEC sp_fulltext_service 'pause_indexing', 0;  

参照

サポートされているバージョンとエディションのアップグレード
SQL Server の複数のバージョンおよびインスタンスの使用
旧バージョンとの互換性
レプリケートされたデータベースのアップグレード