Skip to main content
評価してください: 

Service Pack 3a for Microsoft SQL Server 2000

最終更新日: 2003 年 4 月 9 日

このページの内容は公開・更新された当時のものです。

© Copyright Microsoft Corporation, 2003. All rights reserved.

トピック

1.0 はじめに
1.1 データベース コンポーネント SP3a のインストールの概要
1.2 Desktop Engine (MSDE 2000) SP3a のインストールの概要
1.3 SP3a の削除
1.4 SQL Server または Analysis Services の現在のバージョンの識別
1.5 SP3a に関する追加情報
1.6 利用できる更新された Books Online ドキュメント
1.7 利用できる更新された SQL Server サンプルと Analysis Services サンプル
2.0 SP3a のダウンロードと展開
2.1 Desktop Engine (MSDE 2000) SP3a のダウンロードと展開
3.0 Service Pack のインストール
3.1 SQL Server データベースのバックアップ
3.2 Analysis Services データベースとリポジトリのバックアップ
3.3 システム データベースの空き容量の確認
3.4 SP3a セットアップ前に実行していたサービスとアプリケーションの停止
3.5 データベース コンポーネント SP3a のインストール
3.6 Analysis Services SP3a のインストール
3.7 Desktop Engine SP3a のインストール
3.7.1 MSDE 2000 SP3a の前提条件
3.7.2 MSDE 2000 SP3a のセキュリティの考慮点
3.7.3 MSDE 2000 のセットアップ パラメータ
3.7.4 MSDE 2000 の既存のインスタンスの SP3a へのアップグレード
3.7.5 MSDE 2000 SP3a の新規インスタンスのインストール
3.7.6 MSDE 1.0 から MSDE 2000 SP3a へのアップグレード
3.7.7 MSDE 2000 SP3a の再配布
3.7.8 MSDE 2000 SP3a ファイルの場所
3.8 サービスの再開
3.9 アプリケーションの再開
3.10 フェールオーバー クラスタへのインストール
3.11 レプリケートされているサーバーへのインストール
3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用
3.13 SP3a のアンインストール
3.14 SP3a の再適用
4.0 その他のインストールの考慮点
4.1 自動インストール
4.2 SP3a Data Access Components の再配布
5.0 特記事項
5.1 データベースと Desktop Engine の機能強化
5.1.1 データベース コンポーネント SP3a での中国語、日本語、または韓国語文字の使用
5.1.2 ハッシュ チームの削除
5.1.3 Affinity Mask スイッチの追加
5.1.4 フィルタ選択されたインデックス付きビュー
5.1.5 セットアップ完了後のフルテキスト カタログの再構築
5.1.6 sp_change_users_login の構文変更
5.1.7 既定で無効になっている OLE DB プロバイダへのアドホック アクセス
5.1.8 新しい SqlServerLike プロバイダ オプション
5.1.9 分散クエリの拡張エラー メッセージ
5.1.10 SQL ステートメントを返す新しい関数 fn_get_sql
5.1.11 複数データベースの組み合わせ所有権
5.1.12 トレース フラグ 1204 の機能強化
5.1.13 sp_changedbowner の権限の変更
5.1.14 デバッグ機能の変更
5.1.15 UDP ポート 1434 での操作
5.2 Analysis Services の機能強化
5.2.1 リモート パーティション
5.2.2 更新された Analysis Services 再配布可能クライアント セットアップ
5.2.3 サード パーティのデータ マイニング アルゴリズム プロバイダを有効にするサポート
5.2.4 更新されたクライアント ファイルを持つコンピュータへの Analysis Services のインストール
5.2.5 仮想キューブが参照する OLAP キューブの制限数の増加
5.2.6 新しい DESCRIPTION キーワード
5.2.7 PivotTable サービスの新しい Restricted Client プロパティ
5.2.8 Safety Options プロパティの変更
5.2.9 既定で無効になっている Meta Data Services へのリポジトリの移行
5.2.10 リモート Data フォルダの権限の変更が必要
5.3 レプリケーションの機能強化
5.3.1 トランザクション レプリケーション UPDATE カスタム ストアド プロシージャ
5.3.2 一意列でのトランザクション レプリケーション UPDATE ステートメント
5.3.3 同時実行スナップショット処理から削除された制限事項
5.3.4 トランザクション レプリケーションのスクリプティング カスタム ストアド プロシージャ
5.3.5 マージ レプリケーションの保有期間を基準にしたメタ データのクリーンアップ
5.3.6 マージ レプリケーションのバックアップと復元の問題点
5.3.7 別のバージョンの SQL Server からレプリケートされたデータベースの復元
5.3.8 ログ リーダー エージェントの新しい -MaxCmdsInTran パラメータ
5.3.9 一意ではないクラスタ化インデックスの制限
5.3.10 スナップショット エージェントの新しい -MaxNetworkOptimization コマンド ライン引数
5.3.11 マージ レプリケーションが使用する新しいロール
5.3.12 sysadmin 以外のユーザーが作成したサブスクリプションの要件
5.3.13 ストアド プロシージャの権限の変更
5.3.14 sp_addmergearticle と sp_changemergearticle の新しいパラメータ
5.3.15 パブリッシングとディストリビューションの設定ウィザードの新しいページ
5.3.16 Windows 同期マネージャ サポートの変更
5.3.17 レプリケーション データベースのアタッチまたは復元の必要条件の変更
5.4 SQL Server エージェントの機能強化
5.4.1 SQL Server エージェント ログ アカウント情報
5.4.2 マスタ/対象サーバー構成の変更
5.4.3 新しい SQL Server エージェント拡張ストアド プロシージャ
5.4.4 SQL Server エージェント権限の確認
5.4.5 SQL Agent Mail MAPI プロファイル
5.5 SQL Server 接続コンポーネントの機能強化
5.5.1 Microsoft Data Access Components のアップデート
5.5.2 QLogic Virtual Interface Architecture のサポート
5.6 Meta Data Services の機能強化
5.6.1 Unicode でのメタ データ ブラウザ エクスポート
5.6.2 無効になったスクリプティング サポート
5.6.3 リポジトリ情報にアクセスするための新しい RepositoryUser ロール
5.7 データ変換サービスの機能強化
5.7.1 DTS ウィザードが文字列型の文字を 255 文字に制限しない
5.7.2 SQL Server エージェントが実行した DTS パッケージのセキュリティ コンテキストをログに記録する
5.7.3 SQL Server エージェントのプロキシ アカウントの強化
5.7.4 既定で無効になっている Meta Data Services への保存
5.8 XML の機能強化
5.8.1 XPath 式の検証の機能強化
5.9 Virtual Backup Device API の機能強化
5.9.1 1 つのスナップショットへの複数のデータベースのキャプチャ
5.10 エラー報告
5.11 English Query の機能強化
5.12 DB-Library と Embedded SQL for C

1.0 はじめに

Microsoft SQL Server 2000 Service Pack 3a (SP3a) は、Slammer ワームで生じた問題点に対処する SQL Server 2000 SP3 に以下の変更点を組み込んだものです。

  • SQL Server 2000 Enterprise Evaluation Edition のインスタンスに修正プログラムを適用するために、SP3a を SQL Server 2000 Enterprise Evaluation Edition に適用できます。

  • SP3a は、SQL Server 2000 SP3 の Microsoft Data Access (MDAC) コンポーネントのバージョンで一部のユーザーに生じたセットアップの問題点に対処します。

  • MSDE 2000 SP3a Setup ユーティリティは、MSDE 2000 の新規インスタンスをインストールしているときに、ネットワーク接続に対するサポートを既定でオフにするようになりました。インスタンスを SP3a にアップグレードするときに、現在のネットワーク サポートの設定が保持されます。

  • SQL Server 2000 SP3a または MSDE 2000 SP3a のインスタンスをネットワーク接続をサポートしないように構成しているときは、そのインスタンスは UDP ポート 1434 の使用も停止します。

SP3a で導入された変更の大部分はセットアップに関連しているので、既に SP3 にアップグレードした SQL Server 2000 または MSDE 2000 のインスタンスに SP3a を適用する必要はありません。ただし、まだ SP3 にアップグレードしていないインスタンスが存在する場合は、常に、そのようなインスタンスを SP3 ではなく SP3a に直接アップグレードする必要があります。今後のアップグレードに使用する予定で SP3 ダウンロード ファイルのコピーを所持している場合は、これらのコピーを削除し、代わりに SP3a ダウンロード ファイルまたは SP3a CD-ROM のいずれかを使用する必要があります。MSDE 2000 を配布し、インストールするアプリケーションは、SP3 ではなく SP3a をインストールする必要があります。SQL Server 2000 SP3 または MSDE 2000 SP3 のインスタンスに SP3a を適用できますが、このような適用を行っても、既に SP3 を適用しているインスタンスにはほとんど効果がありません。

このリリースの Microsoft® SQL Server™ 2000 の Service Pack 3a (SP3a) は次の 3 つの部分で構成されます。

  • データベース コンポーネント SP3a は、SQL Server 2000 インスタンスのデータベース コンポーネントのアップデートを提供します。 ただし、SQL Server 2000 Desktop Engine のインスタンスは除きます。データベース コンポーネント SP3a には以下のコンポーネントのアップデートを含んでいます。

    • データベース エンジン。

    • SQL Server Enterprise Manager や osql ユーティリティ などのすべてのデータベース クライアント ツールおよびユーティリティ。

    • Microsoft OLE DB Provider for SQL Server 2000、SQL Server 2000 ODBC ドライバ、およびクライアント Net-Library などのデータベース クライアント接続コンポーネント。

  • SQL Server 2000 Analysis Services SP3a は、インストールされた SQL Server 2000 の以下に示す Analysis Services コンポーネントのアップデートを提供します。

    • Analysis Services。

    • 分析マネージャや Microsoft OLE DB Provider for Analysis Services などの Analysis Services クライアント コンポーネント。

    • Microsoft OLE DB Provider for SQL Server 2000、SQL Server 2000 ODBC ドライバ、およびクライアント Net-Library などのデータベース クライアント接続コンポーネント。

  • Desktop Engine SP3a は、以下に示す SQL Server 2000 Desktop Engine (MSDE 2000) のインスタンスのデータベース コンポーネントのアップデートを提供します。

    • データベース エンジン。

    • MSDE 2000 に同梱されている osql ユーティリティや bcp ユーティリティなどのデータベース コマンド プロンプト ユーティリティ。

    • Microsoft OLE DB Provider for SQL Server 2000、SQL Server 2000 ODBC ドライバ、およびクライアント Net-Library などのデータベース クライアント接続コンポーネント。

SP3a のこれら 3 つの部分は、以下のように個別に適用できます。

  • SQL Server 2000 の各サイトは、Analysis Services コンポーネントまたは SQL Server 2000 Desktop Engine のインスタンスをアップグレードしないで、データベース コンポーネント SP3a を使用してデータベース コンポーネントをアップグレードできます。

  • Analysis Services 2000 の各サイトは、Desktop Engine のインスタンスまたはデータベース コンポーネントをアップグレードしないで、Analysis Services SP3a を使用して Analysis Services コンポーネントをアップグレードできます。

  • MSDE 2000 の各サイトは、Analysis Services または SQL Server 2000 データベース エンジンのインスタンスをアップグレードしないで、Desktop Engine SP3a を使用して MSDE 2000 のインスタンスをアップグレードできます。

注意 同一のコンピュータに MSDE 2000 とその他のエディションの SQL Server データベース エンジンの両方を独立したインスタンスとしてインストールしている場合は、Desktop Engine SP3a を MSDE 2000 インスタンスに、データベース コンポーネント SP3a を Personal Edition、Standard Edition、または Enterprise Edition などの SQL Server 2000 データベース エンジンのインスタンスにそれぞれ適用する必要があります。

注意 ポルトガル語 (ブラジル)、スウェーデン語、およびオランダ語用に作成されたバージョンの SQL Server 2000 は SQL Server 2000 Desktop Engine (MSDE 2000) だけなので、これらの言語で利用できる Service Pack は Desktop Engine SP3a だけです。データベース コンポーネント SP3a または Analysis Services SP3a でアップグレードされる SQL Server 2000 コンポーネントは、これらの言語では利用できません。ポルトガル語 (ブラジル)、スウェーデン語、およびオランダ語を使用しているユーザーが、Desktop Engine 以外のバージョンの SQL Server に Service Pack 3a を適用する場合は、アップグレードするエディションの言語に一致する SP 3a ファイルをダウンロードする必要があります。たとえば、英語版の SQL Server 2000 データベース エンジンアップグレードするには、英語版の SP3a ファイルをダウンロードする必要があります。Service Pack のダウンロード方法については、以下の「2.0 SP3a のダウンロードと展開」を参照してください。

ページのトップへ

1.1 データベース コンポーネント SP3a のインストールの概要

データベース コンポーネント SP3a Setup プログラムは、アップグレードする SQL Server 2000 のインスタンスにどのエディションの SQL Server 2000 が存在するかを自動的に検出します。Setup は、そのインスタンスにインストールされているコンポーネントだけをアップグレードします。たとえば、SQL Server 2000 Standard Edition を実行しているコンピュータに Service Pack を適用するときは、Service Pack は SQL Server 2000 Enterprise Edition にのみ含まれるコンポーネントはアップグレードしません。

データベース コンポーネント SP3a は、SQL Server の 1 つの既定のインスタンスまたは名前付きインスタンスに適用できます。SQL Server 2000 の複数のインスタンスを SP3a にアップグレードする場合は、各インスタンスに対して SP3a を適用する必要があります。SQL Server 2000 の 1 つ以上のインスタンスを持つ 1 台のコンピュータ上の 1 つのインスタンスを SP3a にアップグレードするときは、すべてのツールが SP3a にアップグレードされます。インスタンスごとに独立したツールのコピーは存在しません。

ページのトップへ

1.2 Desktop Engine (MSDE 2000) SP3a のインストールの概要

Desktop Engine SP3a を使用して、以下のことを行えます。

  • SQL Server 2000 Desktop Engine (MSDE 2000) の既存のインスタンスを SP3a にアップグレードします。

  • MSDE 2000 のインスタンスをインストールすることを許可する MSDE 2000 ライセンスを所持しているという条件で、MSDE 2000 SP3a の新規インスタンスをインストールします。

  • MSDE 2000 のインスタンスを実行することを許可する MSDE 2000 ライセンスを所持しているという条件で、MSDE 1.0 のインスタンスを MSDE 2000 にアップグレードします。

  • アプリケーションのインストールの一部として MSDE 2000 SP3a のインスタンスをインストールできるアプリケーション セットアップ ユーティリティを作成している開発者向けに必要なファイルを提供します。その開発者は、アプリケーションと共に MSDE を配布するライセンスを所持する必要があります。

SQL Server 2000 Service Pack 3a を MSDE 2000 の既存のインスタンスに適用する手順は、そのインスタンスをインストールした方法によって異なります。Microsoft が提供する Desktop Engine SP3a ファイルは、MSDE 2000 セットアップ ユーティリティを使ってインストールした MSDE 2000 のインスタンスに SP3a を適用するためだけに使用できます。大部分のアプリケーションは、次の 2 つのメカニズムのいずれかを使用して MSDE 2000 をインストールします。

  • アプリケーションのセットアップ ユーティリティが、インストール中に MSDE 2000 セットアップ ユーティリティを呼び出します。この方法でインストールされた MSDE 2000 のインスタンスは、Desktop Engine SP3a ファイルを使って SP3a にアップグレードできます。

  • アプリケーションのセットアップ ユーティリティが、Microsoft Windows インストーラ テクノロジを使用する場合、そのセットアップ ユーティリティは MSDE 2000 マージ モジュールを直接利用できます。この方法でインストールされた MSDE 2000 のインスタンスは、Desktop Engine SP3a ファイルを使って SP3a にアップグレードできません。この場合、アプリケーションのベンダに修正プログラム ファイルを要求する必要があります。Desktop Engine (MSDE 2000) SP3a は、マージ モジュールを使用する既存のアプリケーションをサポートするために、マージ モジュールを提供します。新しいアプリケーションのセットアップ ユーティリティは、MSDE 2000 マージ モジュールを直接使用するのではなく、MSDE 2000 セットアップ ユーティリティを呼び出すように作成する必要があります。

Desktop Engine SP3a を使用して MSDE 2000 のインスタンスをアップグレードできるかどうかを判断するための方法は、「2.1 Desktop Engine (MSDE 2000) SP3a のダウンロードと展開」で説明します。SQL Server 2000 SP3a CD-ROM から Desktop Engine SP3a を適用している場合でも、Desktop Engine SP3a を適用できるかどうか、またはアプリケーション ベンダに修正プログラム ファイルを要求する必要があるかどうかを判断するために、セクション 2.1 の説明をお読みください。

1 台のコンピュータに MSDE 2000 の複数のインスタンスが存在する場合、Desktop Engine SP3a を適用できるかどうかを判断するには、各インスタンスを個別に評価する必要があります。また、SP3a を各インスタンスに個別に適用する必要があります。

以下の条件を満たす場合は、この Readme のセクション 1 と 2 を再確認後、セクション 3 の指示に従ってください。

  • MSDE の既存のインスタンスに Desktop Engine SP3a を適用できると判断した場合。

  • MSDE 2000 の新規インスタンスをインストールしている場合。

  • アプリケーションのセットアップ ユーティリティに Desktop Engine SP3a ファイルを組み込んでいる場合。

以下のセクションで、MSDE の既存のインスタンスを SP3a にアップグレードするか、MSDE 2000 SP3a の新規インスタンスをインストールするかのいずれかの最も一般的な事例の例を提供しています。

ページのトップへ

1.3 SP3a の削除

SQL Server 2000 SP3a を削除する方法は、削除する SQL Server 2000 SP3a コンポーネントによって異なります。

SQL Server データベースコンポーネント SP3a と Desktop Engine SP3a の削除

SQL Server データベース コンポーネント SP3a または Desktop Engine SP3a がインストールされるとき、メンテナンスのためにシステム テーブルに変更が加えられます。また、レプリケーション トポロジのメンバであるユーザー データベースやディストリビューション データベースもアップグレードされます。そのため、この変更により SP3a は簡単には削除できません。SP3a をインストールする前に実行していたビルドに戻すには、まず SQL Server 2000 データベース エンジンまたは MSDE 2000 のインスタンスをアンインストールし、その後そのインスタンスを再インストールする必要があります。以前に SQL Server 2000 Service Pack を実行していたか、何らかの Quick Fix Engineering (QFE) 修正プログラムを適用していた場合は、再インストールしたインスタンスに Service Pack や QFE 修正プログラムを再適用する必要があります。

注意 SP3a を削除する場合は、SP3a を適用する直前の master、model、および msdb データベースのバックアップを所持している必要があります。詳細については、「3.1 SQL Server データベースのバックアップ」と「3.2 Analysis Services データベースとリポジトリのバックアップ」を参照してください。

詳細については、「SQL Server 2000 コンポーネントと Desktop Engine SP3a のアンインストール」を参照してください。

SQL Server Analysis Services コンポーネント SP3a の削除

SQL Server Analysis Services を SP3a を適用する以前の状態に戻すには、SP3a をインストールする前に、レジストリ キー HK_LOCAL_MACHINE\Software\Microsoft\OLAP Server とそのサブキーすべてをバックアップする必要があります。SP3a をアンインストールしているときに、このレジストリ キーを削除し、バックアップから SP3a 適用以前のキーに復元する必要があります。

注意 SP3a のセットアップ中に行った MDAC 2.7 SP1a へのアップデートはアンインストールできません。

詳細については、「SQL Server 2000 Analysis Services SP3a のアンインストール」を参照してください。

ページのトップへ

1.4 SQL Server または Analysis Services の現在のバージョンの識別

以下の方法を使用して、どのバージョンの SQL Server または Analysis Services がインストールされているかを確認できます。

SQL Server

どのバージョンの SQL Server 2000 データベース エンジンまたは MSDE 2000 がインストールされているかを確認するには、osql ユーティリティまたは isql ユーティリティを使用してコマンド プロンプトに、または SQL クエリ アナライザの [クエリ] ウィンドウに「SELECT @@VERSION」または「SERVERPROPERTY('ProductVersion')」と入力します。

同様に SELECT SERVERPROPERTY('ProductLevel') を実行することによって、特定のバージョンの SQL Server 2000 データベース エンジンまたは MSDE 2000 の製品レベルを確認できます。

以下の表は @@VERSION で表示されるレベルとバージョン番号および SERVERPROPERTY('ProductLevel') で表示される製品レベルと SQL Server 2000 のバージョン番号の関係を示しています。

SQL Server 2000 バージョンとレベル@@VERSIONProductLevel
SQL Server 2000 製品版8.00.194RTM
データベース コンポーネント SP1 または Desktop Engine SP18.00.384SP1
データベース コンポーネント SP2 または Desktop Engine SP28.00.534SP2
データベース コンポーネント SP3 または SP3a、あるいは Desktop Engine SP3 または SP3a8.00.760SP3

実行している SQL Server 2000 データベース エンジンまたは MSDE 2000 のエディションを確認できない場合は、SELECT @@VERSION が返す出力の最終行を参照してください。最終行は以下のいずれか 1 つに一致しています。

Desktop Engine on Windows NT 5.0 (Build 2195:Service Pack 2)  
Enterprise Evaluation Edition on Windows NT 5.0 (Build 2195:Service Pack 2)  
Developer Edition on Windows NT 5.0 (Build 2195:Service Pack 2)  
Personal Edition on Windows NT 5.0 (Build 2195:Service Pack 2)  
Standard Edition on Windows NT 5.0 (Build 2195:Service Pack 2)  
Enterprise Edition on Windows NT 5.0 (Build 2195:Service Pack 2)

注意 行の先頭が SQL Server データベース エンジンまたは MSDE 2000 のエディションを示しています。その後に、現在のオペレーティング システムの情報が続きます。

また、osql ユーティリティまたは isql ユーティリティを使用してコマンド プロンプトに、または SQL クエリ アナライザの [クエリ] ウィンドウに「SELECT SERVERPROPERTY('Edition')」と入力することによって、エディションを確認することもできます。

Analysis Services

インストールされている Analysis Services のバージョンを確認するには、以下の手順を実行します。

  1. [スタート] メニューで、[プログラム]、[SQL Server 2000]、[Analysis Services] の順にポイントし、[分析マネージャ] をクリックします。

  2. 分析マネージャのツリー ビューの [分析サーバー] ノードを右クリックし、[Analysis Services のバージョン情報] を選択します。

  3. 以下の表を使用して、使用している Analysis Services のバージョンを判断します。

Analysis Services のバージョン[ヘルプ] の [バージョン情報] のビルド番号
SQL Server 2000 Analysis Services 製品版8.0.194
Analysis Services SP18.0.382
Analysis Services SP28.0.534
Analysis Services SP3 または SP3a8.0.760

SP3 と SP3a の区別

SP3 または SP3a のどちらがインストールされているかどうかを判断するには、Net-Library ファイルの Ssnetlib.dll のバージョン番号を確認します。このファイルのバージョン番号が 2000.80.760.0 の場合は SP3 がインストールされており、このファイルのバージョン番号が 2000.80.766.0 の場合は SP3a がインストールされています。

既定の設定を使用してインスタンスがインストールされたと仮定すると、以下のいずれかの場所で Ssnetlib.dll ファイルを確認できます。

  • 既定のインスタンス: C:\Program Files\Microsoft SQL Server\Binn\Ssnetlib.dll

  • 名前付きインスタンス: C:\Program Files\Microsoft SQL Server\MSSQL$<InstanceName>\Binn\Ssnetlib.dll

SP3 のセットアップ フォルダか SP3a のセットアップ フォルダかを判断するには、SP3Readme.htm ファイルを開いて、最初のページを見ます。Service Pack のバージョン、SP3a または SP3 は最初のページの先頭に記載されています。

ページのトップへ

1.5 SP3a に関する追加情報

この Service Pack で解決された問題点の一覧は、Microsoft Knowledge Base の記事  306908 にあります。 306908 の一覧内の各問題点は、解決された問題点が説明されている Knowledge Base の記事にリンクされています。各 Knowledge Base の記事へのリンクに従って、それぞれの修正についての情報を参照します。

Knowledge Base の記事を検索するには

  1. [製品の選択] で [SQL Server 2000] を選択します。

  2. [キーワードを入力してください] に文書番号を入力します。

  3. [検索の種類] で [文書番号] をオンします。

  4. [実行] ボタンをクリックします。

この Readme ファイルを記述している時点で利用できなかった SQL Server 2000 Service Pack 3a 関連のすべての情報は、 Microsoft Knowledge Base の記事 816502 で公開する予定です。

この記事は、Microsoft Product Support Services Knowledge Base に公開されています。

Microsoft Data Access Components

この Service Pack には、MSXML のアップデートを含む、Microsoft Data Access Components (MDAC) に対するアップデートが含まれています。

詳細については、「5.5.1 Microsoft Data Access Components のアップデート」を参照してください。

QFE 修正プログラム

これまでに公開されたすべての SQL Server 2000 SP2 セキュリティ アップデートが SP3a に含まれています。

2002 年 10 月 14 日以降に SQL Server 2000 の修正プログラムを受け取っている場合は、その修正プログラムは SP3a に含まれていません。SQL Server 2000 SP3a に対して同じ修正プログラムを入手する方法については、ご購入元に相談してください。

SQL Server CE Server ツールのアップデート

SQL Server 2000 データベース サーバーおよびパブリッシャ サーバーを SP3 以降にアップグレードした、またはアップグレードする予定の Microsoft SQL Server 2000 Windows® CE Edition (SQL Server CE) のユーザーは、Microsoft Internet Information Services (IIS) サーバーのサーバー レプリケーション コンポーネントもアップデートする必要があります。

ページのトップへ

1.6 利用できる更新された Books Online ドキュメント

SP3 および SP3a で更新されたドキュメントを利用できます。SQL Server 2000 Books Online (アップデート - SP3) には、SP3 および SP3a に関連して改訂された情報と新しい情報が含まれています。

Microsoft Web サイトから SQL Server 2000 Books Online (アップデート - SP3) をダウンロードできます。

ページのトップへ

1.7 利用できる更新された SQL Server サンプルと Analysis Services サンプル

SP3 および SP3a で更新された SQL Server 2000 データベース エンジンのサンプルと Analysis Services のサンプルを利用できます。 Microsoft Web サイトから更新されたサンプルをダウンロードできます。

ページのトップへ

2.0 SP3a のダウンロードと展開

SP3a は以下の 3 種類の方法で配布されます。

  • 以下のコンポーネントの Service Pack を含む SQL Server 2000 Service Pack 3a CD-ROM

    • データベース コンポーネント SP3a

    • Analysis Services SP3a

    • Desktop Engine SP3a

  • Microsoft SQL Server Downloads Web サイトからインターネット経由でダウンロードできる 3 つの自己解凍ファイル。

    • JPN_Sql2ksp3.exe (データベース コンポーネント SP3a)

    • JPN_Sql2kasp3.exe (Analysis Services SP3a)

    • JPN_Sql2kdesksp3.exe (Desktop Engine SP3a)

注意 SQL Server 2000 Service Pack 3a CD-ROM と JPN_Sql2kdesksp3.exe は共に、Desktop Engine の新規インスタンスのインストールに必要なすべてのファイルを含んでいます。

注意 SP3a のダウンロード ファイルは、SP3 のファイルと同じ名前です。

SP3a CD-ROM を所持している場合は、CD-ROM から SP3a を直接インストールできます。

SP3a CD-ROM を所持していない場合は、適切なファイルをダウンロードしてから実行できます。ダウンロード ファイルをコンピュータで実行すると、SP3a CD-ROM のフォルダとファイルと同じ構成でディスク上にフォルダとファイルのセットが作成されます。このファイルの展開フェーズが完了した後に、ディスクに作成されたフォルダから SP3a をインストールできます。

インターネットから SP3a インストールをダウンロードして展開しているときは、以下のガイドラインを使用してください。

  • セクション 2.0 で一覧したファイルの 1 つをダウンロードし、自己解凍形式のファイルを SP3a にアップグレードする SQL Server 2000 ソフトウェアを実行しているコンピュータのフォルダ、またはネットワーク共有上のフォルダに格納します。このフォルダから、自己解凍形式のファイルを実行します。自己解凍プログラムは、Service Pack のファイルを格納するフォルダの名前を問い合わせます。

    注意 Service Pack をネットワーク共有に展開するときは、そのフォルダへのパスを自己解凍プログラムを実行したフォルダと相対で指定します。

  • Service Pack インストール ファイルをダウンロードするローカル ドライブまたはネットワーク共有には、自己解凍形式のファイルのサイズの約 3 倍の空き容量が必要です。必要な領域には、自己解凍形式のファイルを格納する領域、展開した Service Pack ファイルを格納する領域、および自己解凍形式プログラム自体が必要とする一時作業領域を含みます。

  • コンポーネントを展開後に、選択したフォルダの名前を変更できますが、ディレクトリ パス名にスペースを含めないように注意してください。上記のファイルの展開先フォルダに同じフォルダを使用できます。 互いに上書きしたり、干渉することはありません。

  • 自己解凍ファイルを使用して、SP3a CD-ROM と同じディレクトリとファイルの組み合わせをコンピュータに作成します。SP3a をダウンロードした場合は、SQL Server Setup を実行する前にファイルを展開し、Service Pack のディレクトリを作成する必要があります。

  • データベース コンポーネント SP3a と Analysis Services SP3a では、CD-ROM でも展開したファイルでもセットアップ プロセスは同じです。

注意 Service Pack のファイルの一部はシステム ファイルです。そのため、次の手順にしたがってこれらのシステム ファイルを表示してください。Windows エクスプローラで、[表示] メニューの [オプション] をクリックし、[表示] タブで [すべてのファイルを表示] チェック ボックスをオンします。

SQL Server 2000 データベースエンジンまたは MSDE 2000 のインスタンスの言語を判断する方法

SQL Server 2000 Service Pack は言語固有のものです。SQL Server 2000 をアップグレードするには、お使いの SQL Server 2000 ソフトウェアと同じ言語の Service Pack をダウンロードし、適用する必要があります。たとえば、日本語を使用する MSDE 2000 のインスタンスをアップグレードしている場合は、日本語版の Desktop Engine SP3a をダウンロードする必要があります。

SQL Server 2000 データベース エンジンまたは MSDE 2000 のインスタンスの言語がわからない場合は、以下の手順を実行してください。

  • [スタート] メニューをクリックして、[ファイル名を指定して実行] をクリックします。

  • [名前] ボックスに「Regedit」と入力して、[OK] をクリックします。

  • 以下のキーの 1 つを検索して、選択します。

    • SQL Server 2000 データベース エンジンまたは MSDE 2000 の既定のインスタンスの場合は、以下のキーを検索して、選択します。 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion

    • SQL Server 2000 データベース エンジンまたは MSDE 2000 の名前付きインスタンスの場合は、以下のキーを検索して、選択します。 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\InstanceName\CurrentVersion ここで InstanceName はインスタンスの名前です。

  • 右側のウィンドウで、Language エントリの値を調べます。以下の表の値と比較し、お使いの SQL Server 2000 データベース エンジンまたは MSDE 2000 のインスタンスの言語を判断します。

Language レジストリ値 (16 進数値)Language レジストリ値 (10 進数値)そのインスタンスの言語
0x000004041028中国語 (繁体字)
0x000004071031ドイツ語
0x000004091033英語
0x0000040a1034スペイン語
0x0000040c1036フランス語
0x000004101040イタリア語
0x000004111041日本語
0x000004121042韓国語
0x000004131043オランダ語
0x000004161046ポルトガル語 (ブラジル)
0x0000041d1053スウェーデン語
0x000008052053中国語 (簡体字)

データベースコンポーネントと Analysis Services の SP3a ファイル

データベース コンポーネントのインストール ファイルと Analysis Services のインストール ファイルは、共に更新されたセットアップ ドキュメントを含んでいて、SP3a のセットアップ中に [ヘルプ] をクリックすることによってアクセスできます。このドキュメントは、既にコンピュータにインストールされているバージョンの SQL Server 2000 Books Online を更新しません。更新されたバージョンの SQL Server Books Online を入手する方法の詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。SQL Server Books Online をアップグレードしないで、更新された SQL Server 2000 SP3a セットアップ ドキュメントだけにアクセスする場合は、Setupsql.chm ファイルを実行します。Setupsql.chm は、SP3a CD-ROM から展開した Service Pack ファイルを含むローカル ディレクトリまたはネットワーク共有の \Books サブフォルダにあります。

ページのトップへ

2.1 Desktop Engine (MSDE 2000) SP3a のダウンロードと展開

MSDE 2000 の既存のインスタンスを所持しているユーザーは、修正プログラムを適用する方法を知るために、MSDE 2000 のそのインスタンスをインストールした方法を知っている必要があります。Microsoft Knowledge Base の記事 311762 に記載されている指示に従うことにより、レジストリ キーの ProductCode エントリとして記録されている情報からこれを判断できます。

  • ProductCode 値のオリジナルのパッケージ名が、SqlRun01.msi から SqlRun16.msi までであった場合、SQL Server 2000 SP3a ダウンロード ファイルを使って、MSDE 2000 のインスタンスをアップグレードできます。MSDE 2000 のインスタンスの言語を判断する方法に関する情報については、上記を参照してください。

  • ProductCode 値のオリジナルのパッケージ名が、Microsoft アプリケーションを参照している場合は、MSDE 2000 のインスタンスをアップグレードする方法に関する指示について、次のページを参照してください。 Microsoft MSDE Applications Web ページ

  • ProductCode 値がその記事に一覧されていない場合は、そのインスタンスはアプリケーションのセットアップ ユーティリティがインストールしたものです。このような MSDE インスタンスに SP3a を適用するために、SQL Server 2000 SP3a ダウンロード ファイルを使用することはできません。代わりに、アプリケーションを作成した企業から修正プログラム ファイルを入手する必要があります。Microsoft 以外の企業のアプリケーションを使用している場合は、修正プログラム ファイルについて、その企業に問い合わせる必要があります。Microsoft のアプリケーションを使用している場合は、次のページで Microsoft の MSDE アプリケーションの一覧を参照してください (このページでは、このような MSDE 2000 のインスタンスをアップグレードする方法に関する情報が更新されます)。 Microsoft MSDE Applications Web ページ

  • ProductCode 値のオリジナルのパッケージ名が Sample.msi または SampleUpg.msi だった場合は、Microsoft Knowledge Base の記事 314131 を参照してください。

MSDE 2000 SP3a のダウンロード

MSDE 2000 のインスタンスが MSDE セットアップ ユーティリティを使用してインストールされていた (オリジナルのパッケージ名が SqlRun01.msi から SqlRun16.msi まで) 場合は、以下の手順で SQL Server 2000 SP3a ダウンロード ファイルを使用して、MSDE 2000 のインスタンスをアップグレードできます。

  • Microsoft SQL Server Downloads Web サイト に移動します。

  • このページの右上の [Full Download] ボックスで、お使いの MSDE 2000 のインスタンスに相当する言語を選択し、[Go] をクリックします。

  • 次のページで、そのページの一番下にある [このダウンロードに含まれるファイル] に移動します。言語に応じて、以下のファイルのいずれか 1 つを選択します。

    • 英語を選択した場合は、お使いのコンピュータのフォルダに SQL2KDeskSP3.exe ファイルをダウンロードします。

    • その他の言語を選択した場合は、LLL_SQL2KDeskSP3.exe ファイルをダウンロードします。この LLL は言語によって変化します。

MSDE 2000 SP3a ファイルの展開

SQL2KDeskSP3.exe または LLL_SQL2KDeskSP3.exe のいずれかをダウンロードした後に、MSDE 2000 SP3a ファイルを展開する必要があります。

  • Windows エクスプローラを開き、MSDE 2000 SP3a ダウンロード ファイル (SQL2KDeskSP3.exe または LLL_SQL2KDeskSP3.exe、LLL は言語によって変化します) をダウンロードしたフォルダに移動します。

  • ダウンロード ファイルをダブル クリックして、SP3a MSDE ファイルを展開します。問い合わせに応じて、SP3a ファイルを展開するフォルダを指定します。

ページのトップへ

3.0 Service Pack のインストール

SP3a をインストールするには、以下の指示に従います。Service Pack が適用される以下の SQL Server 2000 コンポーネントまたは設定によっては、すべての手順が必要でない場合もあります。

データベース コンポーネント

  • Analysis Services

  • Desktop Engine

  • フェールオーバー クラスタ

  • レプリケーション サーバー

以下のセクションの最初の文章は、そのセクションの内容が適用されるコンポーネントを示します。

インストールを始める前に

SQL Server 2000 データベース エンジンまたは MSDE 2000 のインスタンスがあるアプリケーションによって使用されている場合は、まず、データベース エンジンまたは MSDE 2000 のアップグレードでそのアプリケーション固有の考慮点が存在するかどうかをアプリケーションのプロバイダに確認します。

以下のセキュリティ ポリシーが [インストールを許可しない] に設定されている場合は、SP3a をインストールできません。

  • Windows XP の [デバイス: 署名されていないドライバのインストール時の動作] ローカル セキュリティ ポリシー

  • Windows 2000 の [署名されていないドライバ以外のインストール時の動作] ローカル セキュリティ ポリシー

[インストールを許可しない] 設定を使用している場合は、SP3a をインストールする前に [警告なしで許可する] に変更する必要があります。インストール完了後に、必要に応じてポリシーを以前の設定に戻すことができます。

注意 [インストールを許可しない] はこれらのセキュリティ ポリシーの既定の設定ではありません。

Windows XP を実行しているコンピュータに SQL Server 2000 SP3a をインストールしているときは、MDAC 2.7 は MDAC 2.7 Service Pack 1a (SP1a) に更新されません。システムが MDAC 2.7 SP1a に含まれている任意の修正プログラムを必要とする場合は、SQL Server 2000 SP3a をインストールする前に、まず、Windows XP Service Pack 1 を適用する必要があります。Windows XP SP1 が MDAC 2.7 SP1a に含まれているすべての修正プログラムを適用します。

Microsoft Windows .NET Server ビルド 3683 以前のプレリリース版にこの Service Pack をインストールしているときに、 以下のエラーメッセージが表示されます。

インストールするソフトウェアは、このバージョンの Windows との互換性を検証する Windows ロゴ テストに合格していません。このソフトウェアはインストールされません。システム管理者に問い合わせてください。

このメッセージを無視することを選択できます。[OK] をクリックすると、セットアップが続行されます。

注意 このメッセージは自動インストールを停止します。

Windows NT 4.0 Service Pack 6a を実行しているコンピュータにこの Service Pack をインストールしているときは、Microsoft Knowledge Base の記事 258437 に記載されている修正プログラムを適用する必要があります。

フランス語版の Windows NT 4.0 に SP3 をインストールする前に、Microsoft Knowledge Base の記事 259484 の指示に従ってください。この記事は Microsoft Product Support Services Knowledge Base からアクセスできます。Knowledge Base の検索方法については、「1.5 SP3a に関する追加情報」を参照してください。

データベースコンポーネントのインストールを始める前に

Analysis Services もインストールされているコンピュータ上の SQL Server のインスタンスにデータベース コンポーネント SP3a を適用する場合、Sp3_serv_uni.sql スクリプトを実行しているときにセットアップに失敗することがあります。 これが発生したときは、コンピュータを再起動し、セットアップを再実行してください。

  • SQL Server 2000 Service Pack は、ユーザー データベースがレプリケーション トポロジの一部である場合を除いて、ユーザー データベースを SQL Server 2000 または MSDE 2000 のあるリリース (製品版またはある Service Pack) からバックアップし、別のリリースに復元する機能には影響しません。ユーザー データベースがレプリケーション トポロジの一部ではない場合、SQL Server 2000 または MSDE 2000 の任意のリリースを実行するインスタンスからユーザー データベースをバックアップし、SQL Server 2000 または MSDE 2000 の別のリリースを実行するインスタンスに復元できます。レプリケーションに関するその他の考慮点については、「5.3.6 マージ レプリケーションのバックアップと復元の問題点」を参照してください。

SP3a Setup はレプリケーション トポロジのメンバであるユーザー データベースをアップグレードします。SP3a をインストールする前に、レプリケーション データベースとファイル グループが書き込み可能になっていて、Setup を実行するユーザー アカウントがそのデータベースにアクセス許可を持っていることを確認してください。レプリケーション トポロジに関係するデータベースに SP3a を適用することに関する詳細については、「3.11 レプリケートされているサーバーへのインストール」を参照してください。

SP3a Setup が書き込み可能ではないユーザー データベースまたはファイルグループを検出した場合は、以下のことを行います。

  • すべての書き込み可能なユーザー データベースに SP3a レプリケーション アップデートを適用します。

  • 書き込み可能ではないデータベースの一覧を Winnt\Sqlsp.log 内の Setup ログに書き込みます。

  • 以下の警告メッセージを表示します。

書き込み可能ではない 1 つ以上のデータベースとファイルグループを検出しました。

Setup ログに一覧された一部のデータベースがレプリケーション トポロジのメンバではない場合は、この警告を無視できます。Setup ログに一覧された書き込み可能ではないデータベースのいずれかがレプリケーション トポロジのメンバである場合は、これらのデータベースを書き込み可能にし、SQL Server 2000 のインスタンスに SP3a Setup を再適用する必要があります。

注意 このメッセージは自動インストールには影響しません。自動インストールの詳細については、「4.1 自動インストール」を参照してください。

データベースを書き込み可能にすることに関する詳細については、「3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用」を参照してください。SP3 の再適用の詳細については、「3.14 SP3a の再適用」を参照してください。

書き込み可能ではないデータベースによって Setup が失敗することはなくなったので、SP3a にアップグレードする前に、ログ配布を削除する必要がなくなりました。ただし、そのデータベースがレプリケーション パブリッシャであるデータベースにログを配布している場合は、以下のことを実行する必要があります。

  • SP3a を適用する前に、そのデータベースをオフラインにします。

  • そのインスタンスに SP3a を適用します。

  • データベースをオンラインに戻します。

  • クエリ アナライザにログオンして、以下のスクリプトを実行します。

USE master 
GO 
EXEC sp_vpupgrade_replication 
GO

パブリケーション データベースにログを配布しているすべての書き込み可能ではないデータベースをオフラインにしないで SP3a を適用すると、次のエラー メッセージが表示されます。

スクリプト実行エラー: sp_vpupgrade_replication (1)

このエラーが表示される場合は、上記の手順に従います。

注意 Setup は、インストール中に書き込み可能ではないデータベースと、オフラインまたは問題のあるデータベースを区別しません。インストール中にこれらの条件のいずれかを満たすレプリケーション データベースまたはファイル グループが存在し、レプリケーション トポロジに関連している場合は、データベースを書き込み可能にした後、Service Pack を再適用する必要があります。

注意 書き込み可能ではないデータベースによって Setup が失敗することはなくなったので、SP3a にアップグレードする前に、ログ配布を削除する必要がなくなりました。

Systems Management Server 配布インストールの準備

SQL Server 2000 Service Pack 3a をリモートにインストールできません。ただし、Microsoft Systems Management Server を使用して、Microsoft Windows NT Server 4.0 を実行している複数のコンピュータに SP3a を自動的にインストールできます。これを行うには、Systems Management Server で SQL Server パッケージの作成を自動化するパッケージ定義ファイル (Smssql2ksp2.pdf ファイル) を使用する必要があります。その後、SQL Server パッケージを Systems Management Server を実行しているコンピュータに配布し、インストールできます。Sms2kdef.bat ファイルは、Systems Management Server を使用して自動セットアップを開始するバッチ ファイルです。この種のインストールでは、Setup プログラムが必要な関連システム情報を自動的に検出し、ユーザーの入力を必要としません。

注意 Systems Management Server を使用して、Desktop Engine SP3a をインストールすることはできません。

ページのトップへ

3.1 SQL Server データベースのバックアップ

以下は、データベース クライアント コンポーネント以外のすべてのコンポーネントのインストールに適用されます。

データベース コンポーネント SP3a または Desktop Engine SP3a をインストールする前に、mastermsdb、および model データベースをバックアップします。SP3a のインストールにより、mastermsdb、および model データベースには変更が加えられ、SP3 以前のバージョンの SQL Server とは互換性がなくなります。SP3 または SP3a を使用しないで SQL Server 2000 を再インストールする場合は、これらのバックアップが必要になることがあります。

SP3a はレプリケーション トポロジのメンバであるユーザー データベースだけにアップデートを行いますが、ユーザー データベースのバックアップも検討することをお勧めします。

ページのトップへ

3.2 Analysis Services データベースとリポジトリのバックアップ

以下は、Analysis Services のみに適用されます。

Analysis Services SP3a をインストールする前に、Microsoft Analysis Services\Data フォルダのコピーを作成することにより、Analysis Services データベースをバックアップしてください。 特に指定しない限り、Microsoft Analysis Services\Data フォルダは、C:\Program Files フォルダに作成されます。Analysis Services リポジトリを SQL Server に移行していない場合は、Microsoft Analysis Services\bin フォルダにある Msmdrep.mdb ファイルのバックアップ コピーも作成してください。また、分析サーバー レジストリ エントリも保存する必要があります。 保存するには、Regedit.exe を実行し、[レジストリ] メニューの [レジストリ ファイルの書き出し] を使用して、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server キーをバックアップ ファイルにエクスポートします。Analysis Services リポジトリを SQL Server に移行していた場合は、SP3a をインストールする前にリポジトリを保持するデータベースをバックアップします。詳細については、「SQL Server 2000 Analysis Services SP3a のアンインストール」を参照してください。

ページのトップへ

3.3 システム データベースの空き容量の確認

以下は、データベース クライアント コンポーネントと Analysis Services 以外のすべてのコンポーネントのインストールに適用されます。

master データベースおよび msdb データベースに対して自動拡張オプションが設定されていない場合、少なくとも 500 KB の空き容量が必要です。空き容量を確認するには、master データベースまたは msdb データベースで sp_spaceused システム ストアド プロシージャを実行します。どちらかのデータベースの未割り当て領域が、500 KB 未満の場合は、データベースのサイズを増加してください。詳細については、SQL Server Books Online の「データベースの拡張」をご覧ください。

master データベースと msdb データベースで自動拡張オプションが選択されていて、ドライブに十分な空き容量がある場合は、この手順を省略できます。

SQL Server 2000 で自動拡張オプションが設定されていることを確認するには、SQL Server Enterprise Manager を開き、データベースのアイコンをマウスの右ボタンでクリックし、[プロパティ] をクリックします。[ファイルの自動拡張] チェック ボックスがオンになっていることを確認します。

MSDE 2000 でこのオプションがオンになっていることを確認するには、osql コマンド プロンプト ユーティリティを使用して、以下の SQL ステートメントを実行します。

  • sp_helpdb master

  • sp_helpdb msdb

このステートメントの出力の、[growth] 列の値が 0 以外になっていることを確認します。

ページのトップへ

3.4 SP3a セットアップ前に実行していたサービスとアプリケーションの停止

以下は、すべてのコンポーネントに適用されます。

サービスをシャットダウンしないで SP3a を適用できます。サービスをシャットダウンしない場合は、Setup の完了時にコンピュータの再起動を求められます。再起動しないと、以下のサービスを再開できません。

  • Microsoft Distributed Transaction Coordinator (MS DTC) と Microsoft Search および MSSQLServerOLAPService サービス。

  • アップグレードされるインスタンスの MSSQLServer サービスと SQLServerAgent サービス (例、MSSQL$NamedInstance)。

  • Microsoft Component Services、Microsoft Message Queuing、および Microsoft COM Transaction Integrator。

  • コントロール パネルを含むすべてのアプリケーション。(省略可能)

SP3a を適用する前に、上記のサービスとアプリケーションを停止すると、コンピュータを再起動しないで SP3a を適用できます。

クラスタ環境では、サービスを停止できません。詳細については、「3.10 フェールオーバー クラスタへのインストール」を参照してください。

ページのトップへ

3.5 データベース コンポーネント SP3a のインストール

以下は、Desktop Engine と Analysis Services 以外のすべてのコンポーネントのインストールに適用されます。

次のいずれかの場所から Setup.bat スクリプトを実行します。

  • JPN_SQL2KSP3.exe から展開された Service Pack のファイルを含むローカル コンピュータのディレクトリ。

  • SQL Server 2000 SP3a CD-ROM の Service Pack ディレクトリ。

  • JPN_SQL2KSP3.exe から展開された Service Pack のファイルを含むネットワーク共有のディレクトリ。

注意 ネットワーク共有からデータベース コンポーネントをインストールするには、まず、次のいずれかの処理を行う必要があります。

  • 展開した Service Pack ファイルを含むネットワーク共有を利用できるドライブ記号に割り当て、ネットワークに割り当てたドライブで Setup.bat を含むディレクトリに移動し、Setup.bat を実行します。

  • \X86\Setup 内の Setupsql.exe ファイルを実行することによってセットアップを開始します。 X86\Setup フォルダは、展開した Service Pack ファイルを含むディレクトリのサブディレクトリです。

Setup.bat はダイアログ ボックスを表示し、SQL Server 認証または Windows NT 認証のどちらを使用するかなどの情報を問い合わせます。SQL Server 認証を選択する場合は、Setup プログラムに sa ログインのパスワードを提供する必要があります。Windows NT 認証を選択する場合は、Windows ログイン アカウントを使用して、Windows にログオンし、セットアップ プログラムを実行する必要があります。このログイン アカウントは、アップグレードする SQL Server 2000 のインスタンスの sysadmin 固定サーバー ロールに所属している必要があります。

その後セットアップ プログラムは以下の作業を行います。

  • 既存のインストールが sa ログインに対してブランク パスワードを指定した混合モードを使用しているのを検出した場合、[認証モード] ダイアログ ボックスを表示します。sa ログイン パスワードをブランクのままにすると、ユーザーに SQL Server または Desktop Engine に対する管理アクセス権限を容易に提供することになります。 sa ログイン パスワードをブランクのままにすることはお勧めしません。 sa パスワードを強制的に設定するか、Windows NT 認証を使用することにより、システムを保護する必要があります。このダイアログ ボックスの詳細については、このセクションの後半の「[認証モード] ダイアログ ボックス」を参照してください。

  • sa ログインにブランク パスワードを使用していることを検出すると [SA パスワードの警告] ダイアログ ボックスを表示します。このダイアログ ボックスの推奨を意図的に無視し、セットアップを続行することによって、sa ログインのパスワードをブランクにしたままインストールを続行できますが、ブランク パスワードはセキュリティの危険を伴うので、お勧めしません。このダイアログ ボックスは、使用している認証モードに関係なく表示されます。

注意 ここでのパスワード変更はすぐに行われ、セットアップに失敗しても、パスワードは変更されたままになります。

  • Service Pack を適用すると旧バージョンとの互換性の問題が生じる可能性があることを警告する [旧バージョンとの互換性チェックリスト] ダイアログ ボックスを表示します。このダイアログ ボックスの詳細については、このセクションの後半の「[旧バージョンとの互換性チェックリスト] ダイアログ ボックス」を参照してください。

  • いずれかのデータベースまたはファイル グループが書き込み可能ではないことを検出すると、ダイアログ ボックスを表示します。この時点で、これらのデータベースまたはファイル グループがレプリケーション トポロジの一部である場合は、次のいずれかを行うことができます。

    • セットアップ プロセスを停止し、これらのオブジェクトを書き込み可能にしてから、セットアップを再開します。

    • 現在の SP3a のセットアップを続行し、後でこれらのオブジェクトを書き込み可能にしてから、SP3a を再適用します。

    注意 上記の手順は、レプリケーション トポロジの一部である書き込み可能でないデータベースまたはファイル グループに SP3a を適用する場合にのみ必要です。詳細については、「3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用」を参照してください。

  • SP3a に新たに含められたエラー報告機能を有効にする方法を示す [エラー報告] ダイアログ ボックスを表示します。エラー報告の詳細については、「5.10 エラー報告」を参照してください。

  • 必要に応じて、MDAC コンポーネントをアップデートします。詳細については、「5.5.1 Microsoft Data Access Components のアップデート」を参照してください。

  • 既存の SQL Server 2000 ファイルを SP3a のファイルに置き換えます。

  • システム ストアド プロシージャを更新するためにいくつかの Transact-SQL スクリプト ファイルを実行します。

  • セットアップが再起動が必要であると判断すると、最後のダイアログ ボックスでコンピュータを再起動するオプションを表示します。

[認証モード] ダイアログボックス

[認証モード] ダイアログ ボックスには、インストールに対する現在の設定値の既定値はありません。ダイアログ ボックスの既定値は以下のようになります。

  • Microsoft Windows 98 または Windows Millennium Edition を実行しているコンピュータでは、既定の設定は混合モード認証 (これらのオペレーティング システムでは、この認証モードのみサポートされます) になります。ダイアログ ボックスは sa ログインのパスワードを指定することを要求します。パスワードを指定すると、セットアップが sa ログインのパスワードを変更します。パスワードをブランクのままにすると、セットアップはパスワードは変更しないで接続します。

  • Windows NT 4.0 または Windows 2000 を実行しているコンピュータでは、既定の設定は Windows NT 認証になります。このダイアログ ボックスを使用して、認証モードを Windows NT 認証またはブランクではない sa ログイン パスワードを使用する混合モードに切り替えます。

  • 注意 sa ログインの認証モードまたはパスワードを切り替える前に、この切り替えが既存のアプリケーションに影響しないことを確認します。たとえば、混合認証モードを使用している SQL Server のインスタンスを Windows NT 認証だけを使用するように変更する場合、SQL Server 認証を使用して接続しようとする既存のアプリケーションは、Windows NT 認証を使用するように変更するまで接続できません。また、sa ログイン パスワードを変更する場合、古いパスワードを使用しているアプリケーションまたは管理プロセスは、新しいパスワードを使用するように変更するまで接続できません。

    重要 セキュリティ上の理由から、sa ログインにブランク パスワードを使用しないでください。

Setup プログラムは、実行した操作を Sqlsp.log ファイルに記録します。このログ ファイルは、セットアップを実行したコンピュータの Windows ディレクトリに格納されます。複数のインスタンスをアップグレードする場合は、最後に行ったアップグレードだけがこのログに記録されます。

[旧バージョンとの互換性チェックリスト] ダイアログボックス

[旧バージョンとの互換性チェックリスト] ダイアログ ボックスは、Service Pack を適用しているときに生じる可能性のある旧バージョンとの互換性の問題点を一覧します。チェックリストに表示される旧バージョンとの互換性の問題点は、アップグレードする SQL Server 2000 のインスタンスの設定によって変化します。

以下の旧バージョンとの互換性の問題点が、このダイアログ ボックスで対処されます。

  • SP3a は SP2 以前からアップグレードしているときは、Microsoft Search サービスをアップグレードし、そのサービスを使用しているすべてのアプリケーションのすべてのフルテキスト カタログを自動的に再構築します。再構築中は、フルテキスト機能をまったく使用できない場合があります。セットアップを続行するには、このチェック ボックスをオンにする必要があります。詳細については、「5.1.5 セットアップ完了後のフルテキスト カタログの再構築」を参照してください。

  • Service Pack を適用する前に、SQL Server 2000 マスタ/対象サーバー構成をアップグレードする必要があります。SP3a で導入された機能強化は、SQL Server 2000 SP3 または SP3a を実行しているサーバーだけに互換性があります。セットアップを続行するには、このチェック ボックスをオンにする必要があります。詳細については、「5.4.2 マスタ/対象サーバー構成の変更」を参照してください。

  • Service Pack では既定で複数データベースの組み合わせ所有権の許可がオフになります。インストール後に個別のデータベースに対して複数データベースの組み合わせ所有権の許可を有効にできます。すべてのデータベースに対して複数データベースの組み合わせ所有権を使用する必要がある場合は、このチェック ボックスをオンにします。 このチェック ボックスはオプションです。詳細については「5.1.11 複数データベースの組み合わせ所有権」を参照してください。

  • 注意 すべてのデータベースに対して複数データベースの組み合わせ所有権を有効にすることはお勧めしません。

    注意 プレリリース版の SP3 (ビルド 8.00.760 以前) で以前に複数データベースの組み合わせ所有権を有効にしている場合でも、SP3a をインストールするときに、再度これを有効にする必要があります。

ページのトップへ

3.6 Analysis Services SP3a のインストール

以下は、Analysis Services のみに適用されます。

Analysis Services SP3a をインストールするには、以下のいずれかの場所から Setup.exe を実行します。

  • JPN_SQL2KASP3.exe から展開した Analysis Services SP3a ファイルを含むディレクトリの Msolap\Install サブディレクトリ。

  • SP3a CD-ROM の Msolap\Install ディレクトリ。

セットアップ プログラムは、以下の作業を実行します。

  • 必要な情報を問い合わせる [セットアップ] ダイアログ ボックスを表示します。

  • SP3a に新たに含められたエラー報告機能を有効にする方法を示す [エラー報告] ダイアログ ボックスを表示します。エラー報告の詳細については、「5.10 エラー報告」を参照してください。

  • 必要なファイルをコピーし、インストールを完了します。

その他の Analysis Services インストールの問題点

Analysis Services SP3a をインストール後、リモート管理に使用するすべてのコンピュータも SP3 または SP3a にアップグレードする必要があります。アップグレードしないで、分析マネージャを使ってリモートに接続しようとすると、以下のエラー メッセージが表示されます。

サーバー コンピュータ (server_name) のレジストリに接続できません。
または、このサーバーの OLAP Administrators グループのメンバではありません。

Meta Data Services は、新たに RepositoryUser という名前の専用のロールを追加しました。 Meta Data Services はこのロールを使用して、msdb データベース内のリポジトリ情報にアクセスし、更新します。RepositoryUser ロールは、msdb リポジトリに作成、読み取り、更新、削除、および実行権限を持っています。public ロールはこの新しいロールに置き換えられ、このリポジトリに権限を持たなくなりました。次の条件を満たす場合、OLAP Administrators グループを RepositoryUser ロールに追加し、Service Pack 適用後はこのグループのメンバがリポジトリにアクセスできます。

  • リポジトリが Meta Data Services 形式であること。

  • リポジトリが msdb データベースを使用すること。

  • OLAP Administrators グループが以前に public ロールを使用してリポジトリにアクセスしていた。

  • 注意 この変更は、SP3 または SP3a にアップグレードされたサーバーの Meta Data Services リポジトリにアクセスするリモート サーバーにも影響します。リモート サーバー ログインも同様に RepositoryUser ロールに追加する必要があります。

    注意 SP3 または SP3a にアップグレードする前にバックアップした Meta Data Services リポジトリを復元する前に、OLAP Administrators グループを RepositoryUser ロールに追加する必要があります。追加しないと、復元操作に失敗します。

RepositoryUser ロールの詳細については、「5.6.3 リポジトリ情報にアクセスするための新しい RepositoryUser ロール」を参照してください。

Analysis Services Data フォルダが、分析サーバーを実行しているコンピュータとは別のコンピュータに存在する場合は、SP3a Setup を実行後にそのフォルダの権限を変更する必要があります。詳細については、「5.2.10 リモート Data フォルダの権限の変更が必要」を参照してください。

ページのトップへ

3.7 Desktop Engine SP3a のインストール

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

Desktop Engine SP3a は、SQL Server 2000 Desktop Engine (MSDE 2000) のインスタンスのインストールまたはアップグレードに必要なファイルの完全なセットを含みます。ユーザーは、MSDE 2000 のインスタンスのインストールまたはアップグレードを行うライセンスを所持していることを条件として、Desktop Engine SP3a からのファイルを使って、MSDE 2000 のすべてのセットアップ操作を実行できます。

アプリケーションのセットアップ ユーティリティでインストールした MSDE 2000 のインスタンスに Desktop Engine SP3a を適用することはできない場合があります。この場合、アプリケーション プロバイダに連絡して、MSDE 2000 のこのようなインスタンスをアップグレードするために使用できる修正プログラム ファイルを入手する必要があります。MSDE 2000 のインスタンスがこのカテゴリに入るかどうかを判断する方法の詳細については、「2.1 Desktop Engine (MSDE 2000) SP3a のダウンロードと展開」を参照してください。

以下のセクションは、MSDE 2000 SP3a セットアップに関する重要な背景情報を提供します。

以下のセクションで、MSDE の既存のインスタンスを SP3a にアップグレードするか、MSDE 2000 SP3a の新規インスタンスをインストールするかのいずれかの最も一般的な事例の例を説明します。

詳細情報が必要な場合、MSDE 2000 SP3a セットアップに関するドキュメントの主な情報源は、SQL Server 2000 Books Online (アップデート - SP3) にあります。SQL Server 2000 Books Online (アップデート - SP3) に完全に反映されていない変更が MSDE 2000 SP3 と SP3a に対していくつか行われています。このような機能は、この Readme ファイルで説明しています。SQL Server 2000 Books Online (アップデート - SP3) のインストールの詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。

ページのトップへ

3.7.1 MSDE 2000 SP3a の前提条件

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

SQL Server 2000 Desktop Engine (MSDE 2000) SP3a のインストールには、以下の必要条件が適用されます。

MSDE 2000 をアップグレードするときは、MSDE 2000 の各インスタンスに Desktop Engine SP3a を個別に適用する必要があります。

注意 Microsoft は、データベース エンジンの 16 を超えるインスタンスが 1 台のコンピュータに存在する構成をサポートしません。この数には、SQL Server 6.5、SQL Server 7.0、SQL Server 2000、MSDE 1.0、および MSDE 2000 を含みます。

必ず、Setup.exe を実行することによって、MSDE 2000 Setup を開始します。MSDE 2000 .msi ファイルの 1 つをダブルクリックするなど、MSDE 2000 .msi の 1 つを直接起動することによって、Setup を開始しないでください。コマンド プロンプトから Setup を実行して、MSDE の任意のインスタンスをインストールまたはアップグレードするためのパラメータを指定する必要があります。必要なパラメータの詳細については、セクション 3.7.2 から 3.7.6 までを参照してください。

MSDE の既存のインスタンスを SP3a にアップグレードするか、MSDE SP3a の新規インスタンスをインストールするために、ターミナル サービス接続を使用すると、問題が生じる可能性があります。問題が発生した場合は、ローカル コンピュータから Setup を再開してください。

MSDE 2000 SP3a Setup を使用してインストールまたはアップグレードする MSDE のインスタンスのインスタンス名を知っている必要があります。MSDE の名前付きインスタンスをインストールまたはアップグレードしている場合は、インスタンス名を指定するために INSTANCENAME パラメータを使用する必要があります。INSTANCENAME パラメータを指定しないと、Setup はそのコンピュータの MSDE の既定のインスタンスを操作します。SP3 より前のバージョンの MSDE 2000 Setup では、ユーザーは MSDE 2000 のインストールまたはアップグレードに使用した .msi インストール パッケージ ファイルを指定する必要がありました。SP3 以降のバージョンの Setup では、Setup が .msi ファイルを管理するので、アップグレードまたは新規インストールのいずれにも .msi ファイルを指定する必要がなくなりました。

ハード ドライブ、ネットワーク共有、または CD-ROM から MSDE 2000 SP3a Setup を実行できます。MSDE 2000 のインスタンスを SP3a にアップグレードするときは、MSDE 2000 のインストールに使用した元のファイルが、元のインストール中に存在していた場所にまだ存在している場合のみ、ネットワーク共有または CD-ROM から Setup を実行できます。元のインストールが CD-ROM から行われた場合は、MSDE 2000 SP3a Setup はアプグレード中に元の CD-ROM を要求します。元のファイルが元の場所に存在しない場合、または元の CD-ROM が利用できない場合は、MSDE 2000 SP3a ファイルをハード ドライブにコピーし、ハード ドライブから Setup を実行する必要があります。

SP3a をインストールするために独自の CD-ROM を作成する場合は、CD-ROM のボリューム ラベルを SQL2KSP3 にする必要があります。独立系ソフトウェア ベンダ (ISV) がアプリケーションのコンポーネントとして Desktop Engine を配布することを目的に CD-ROM を作成している場合は、CD-ROM のボリューム ラベルを、Windows インストーラ パッケージ (*.msi) の Media テーブルの VolumeLabel プロパティと等しくする必要があります。

Windows インストーラ Version 2.0.2600.0 以降を使用している場合のみ、CD-ROM から Desktop Engine のアップグレードをインストールできます。Windows インストーラをアップグレードする必要がある場合は、SP3a に Windows インストーラをアップグレードするために必要なファイルが含まれています。

Windows インストーラをアップグレードする方法

  1. Windows エクスプローラを使用して、SQL Server 2000 SP3a CD-ROM または JPN_SQL2KDeskSP3.exe ファイルから展開したフォルダの \MSDE\MSI フォルダに移動します。

  2. InstMsi20.exe を実行します。

  3. 指示に応じて、コンピュータを再起動します。

ページのトップへ

3.7.2 MSDE 2000 SP3a のセキュリティの考慮点

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

SP3a では、既定の設定がよりセキュアな構成になるように、MSDE 2000 Setup の動作が変更されました。

Desktop Engine SP3a は、MSDE 2000 のインスタンスのネットワーク接続サポートの構成を指定する DISABLENETWORKPROTOCOLS セットアップ パラメータの既定の動作を変更します。別のコンピュータで実行されているアプリケーションが MSDE のインスタンスに接続しない場合は、そのインスタンスはネットワークをサポートする必要がなく、使用されないリソースはオンにしておくのが賢明です。SP3a は、MSDE 2000 の新規インスタンスをインストールするときに、既定でネットワーク サポートをオフにします。MSDE 2000 SP3a のインスタンスをインストールするときに、ネットワーク サポートが無効になった場合は、後でネットワーク サポートを有効にするようにそのインスタンスを再構成できます。ネットワーク アクセスを無効および復元することに関する詳細については、Microsoft Knowledge Base の記事 814130 を参照してください。

既定では、強固な sa パスワードを指定する SAPWD パラメータを使用しない限り、MSDE 2000 SP3a Setup は MSDE 2000 の新規インスタンスをインストールしません。既定では、sa ログインに強固なパスワードを割り当てていない限り、MSDE 2000 SP3a Setup は MSDE 2000 の既存のインスタンスをアップグレードしません。MSDE のインスタンスを使用するアプリケーションが何らかの方法で null sa パスワードに依存しない限り、既存のインスタンスをアップグレードしているときでも、sa ログインに強固なパスワードを割り当てる必要があります。MSDE 2000 のインスタンスが Windows 認証モードで実行されている場合でも、そのインスタンスを混在モードに切り替えるとすぐに、sa ログインがアクティブになります。null、ブランク、単純、または既知の sa パスワードは、認証されないアクセスに使用される可能性があります。MSDE 2000 のインスタンスを SP3a にアップグレードする前に、強固な sa パスワードを割り当てる必要がある場合は、Microsoft Knowledge Base の記事 322336 を参照してください。

MSDE 2000 インストールでは、セキュリティを強化するために、できる限り Windows 認証を使用します。以下の場合は、混在モードから Windows 認証モードに切り替えることを検討してください。

  • MSDE 2000 を使用するアプリケーションを Windows 認証を使用して実行できる場合。

  • インスタンスに接続する必要のあるすべてのユーザーに対して Windows 認証ログインを定義している場合。詳細については、SQL Server 2000 Books Online の「Windows ユーザーまたはグループの追加」を参照してください。

  • MSDE 2000 のインスタンスを Windows 98 または Windows ME で実行しない場合。

MSDE 2000 のインスタンスを混在モードから Windows 認証モードに変更することの詳細については、Microsoft Knowledge Base の記事 322336 を参照してください。

ページのトップへ

3.7.3 MSDE 2000 のセットアップ パラメータ

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

MSDE 2000 はアプリケーションと共に配布され、アプリケーションのセットアップ プログラムでインストールされるようにデザインされています。MSDE 2000 には、対話型のセットアップ プログラムはありません。MSDE 2000 のセットアップ メカニズムは、アプリケーションのセットアップ ユーティリティによって呼び出され、エンド ユーザーとの対話が必要な場合は、アプリケーションのセットアップが対話を処理するようにデザインされています。MSDE 2000 には、次の 2 つのインストール メカニズムがあります。

  • コマンド プロンプト Setup ユーティリティ。通常、セットアップ ユーティリティはアプリケーションのセットアップ ユーティリティから呼び出されますが、コマンド プロンプト ウィンドウから実行することもできます。MSDE 2000 セットアップ ユーティリティには、ユーザーがユーティリティの動作を制御できるグラフィカル ユーザー インターフェイスがありません。代わりに、このユーティリティは、ユーティリティが実行する必要のある動作を定義するパラメータのセットを受け取ります。

  • Windows インストーラ マージ モジュールのセット。Windows インストーラ ベースのセットアップ ユーティリティを作成している開発者は、MSDE 2000 マージ モジュールを利用することによって、MSDE 2000 のインスタンスをインストールするアプリケーション セットアップをコーディングできます。開発者は、MSDE 2000 セットアップ ユーティリティ パラメータに対応するインストール パッケージ プロパティを指定することによって、インストールするインスタンスの構成を制御できます。

ユーザーは、コマンド プロンプト MSDE 2000 Setup ユーティリティを使用して、MSDE の既存のインスタンスのアップグレード、または MSDE 2000 の新規インスタンスのインストールのいずれかを行えます。ユーザーは、パラメータを指定することによって、MSDE 2000 Setup プログラムの動作を制御します。次の 2 つの方法のいずれかで、セットアップ パラメータを指定できます。

  • コマンド ラインで。

  • Setup ユーティリティが読み取る .ini ファイルで。

MSDE 2000 SP3a バージョンの Setup がサポートするパラメータの大部分は、SQL Server 2000 Books Online (アップデート – SP3) の「Desktop Engine の Setup.exe のカスタマイズ」に記載されています。SQL Server 2000 Books Online のインストールの詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。

MSDE Setup パラメータに指定する値にブランクなどの特殊文字を含んでいる場合は、値を二重引用符で囲む必要があります。それ以外の場合は、引用符を省略できます。

以下の MSDE 2000 SP3a Setup パラメータは、SQL Server 2000 Books Online (アップデート – SP3) に記載されていないか、Books Online の記述とは動作が異なります。

パラメータ名説明
ALLOWXDBCHAINING=1複数データベースの組み合わせ所有権を有効にします。詳細については「5.1.11 複数データベースの組み合わせ所有権」を参照してください。
SAPWD=sa_passwordMSDE 2000 の新規インスタンスをインストールするときに、sa ログインに割り当てられるパスワードを指定します。MSDE 2000 の既存のインストールをアップグレードするときは、SAPWD が無視されるので、アップグレードを行う前に、sa ログインに強固なパスワードが割り当てられていることを確認する必要があります。Windows 認証モードを使用しているときでも、常に、強固な sa パスワードを指定する必要があります。Setup.exe を実行しているときは、SAPWD プロパティはインストール ログ ファイルに書き込まれませんが、マージ モジュールを使用してインストールする場合は書き込まれます。
/upgradesp
{
SQLRUN
|
[<MSIPath>]SqlRunXX.msi
}
MSDE 2000 の既存のインスタンスを SP3a にアップグレードすることを指定します。このスイッチは、SP3 以降では、以前のバージョンのセットアップでサポートしていた/p スイッチに置き換わるものです。SP3 以降では、/p スイッチを使用しないでください。SP3a にアップグレードするときに、MSDE 2000 の既存のインスタンスのインストールに使用した .msi ファイルを指定する必要はなくなりました。
大部分のユーザーの場合、単純に SQLRUN を指定するだけで、MSDE 2000 SP3a セットアップ ユーティリティが使用する .msi ファイルを判断します。INSTANCENAME を指定しないで SQLRUN を指定すると、セットアップは MSDE 2000 の既定のインスタンスをアップグレードします。SQLRUNINSTANCENAME の両方を指定すると、セットアップは INSTANCENAME パラメータを使用して指定したインスタンスをアップグレードします。
MSDE 2000 .msi インストール パッケージ ファイルの名前を指定すると、セットアップは、コンピュータ上に存在する、最初に同じ名前のマージ モジュールを使ってインストールしたインスタンスをアップグレードします。たとえば、SqlRun01.msi を指定すると、最初に SqlRun01.msi を使ってインストールした MSDE 2000 のインスタンスをアップグレードします。MSIPath は、.msi ファイルを保持するフォルダのパスです。MSIPath の既定のパスは Setup\ です。
/upgradesp の指定例については、「3.7.4 MSDE 2000 の既存のインスタンスの SP3a へのアップグレード」を参照してください。
UPGRADEUSER=AnAdminLoginSQL Server 認証を使用している MSDE 1.0 または MSDE 2000 のいずれかのインスタンスをアップグレードするときに使用するログインを指定します。指定するログインは sysadmin 固定サーバー ロールのメンバである必要があります。このパラメータは、MSDE のインスタンスをアップグレードするときに、SECURITYMODE=SQL を指定した場合のみ使用されます。
UPGRADEPWD=AdminPasswordSQL Server 認証を使用している Desktop Engine をアップグレードするときに UPGRADEUSER で指定したログインのパスワードを指定します。

Desktop Engine SP3 では、新しい DISABLENETWORKPROTOCOLS パラメータを導入しました。Desktop Engine SP3a では、既定でよりセキュアになるように、DISABLENETWORKPROTOCOLS の動作が変更されました。

以下に、SP3a の DISABLENETWORKPROTOCOLS の動作を示します。

DISABLENETWORKPROTOCOLS 値既存のインスタンスのアップグレード新規インスタンスのインストール
1すべてのサーバー Net-Library が無効になるようにインスタンスが構成されます。すべてのサーバー Net-Library が無効になるようにインスタンスが構成されます。
0既存のサーバー Net-Library 構成が保持されます。既定のサーバー Net-Library とアドレスが有効になるようにインスタンスが構成されます。
パラメータが指定されなかったか、0 または 1 以外の値を指定した場合。既存のサーバー Net-Library 構成が保持されます。すべてのサーバー Net-Library が無効になるようにインスタンスが構成されます。

SP3 と SP3a DISABLENETWORKPROTOCOLS の動作を比較すると、次の 2 つの違いがあります。

  • SP3 を使って新規インスタンスをインストールするときに、DISABLENETWORKPROTOCOLS を指定しないか、0 または 1 以外の値を指定すると、既定の Net-Library とアドレスが有効になるように、インスタンスがインストールされます。SP3a では、Net-Library が無効になります。

  • MSDE 2000 SP3 のあるインスタンスに対して すべての Net-Library を無効にしても、そのインスタンスは依然として UDP ポート 1434 を使用します。SP3a では、この構成ではそのインスタンスは UDP ポート 1434 を使用しません。詳細については、「5.1.15 UDP ポート 1434 での操作」を参照してください。

既定の Net-Library 構成の詳細については、SQL Server 2000 Books Online の「Net-Library と通信アドレスの制御」を参照してください。

Windows インストーラ セットアップに MSDE 2000 マージ モジュール (.msi ファイル) を組み込んでいる場合は、.msi ファイルのプロパティとして上記のセットアップ パラメータを指定できます。Desktop Engine (MSDE 2000) SP3a は、マージ モジュールを使用する既存のアプリケーションをサポートするために、マージ モジュールを提供します。新しいアプリケーションのセットアップ ユーティリティは、MSDE 2000 マージ モジュールを直接使用するのではなく、MSDE 2000 セットアップ ユーティリティを呼び出すように作成する必要があります。

パラメータ名マージ モジュールのプロパティ
ALLOWXDBCHAININGSqlAllowXDBChaining
DISABLENETWORKPROTOCOLSSqlDisableNetworkProtocols
SAPWDSqlSaPwd
UPGRADEUSERSqlUpgradeUser
UPGRADEPWDSqlUpgradePwd

その他のセットアップ パラメータに対応するマージ モジュールのプロパティの詳細については、SQL Server 2000 Books Online の「SQL Server Desktop Engine マージ モジュールの使用」を参照してください。

セットアップログの要求

セットアップ実行中に問題が発生し、それをデバッグするために詳細なログが必要な場合、/L*v <LogFileName> を指定します。<LogFileName> は、セットアップがすべての操作を記録するログ ファイルの名前です。名前の一部としてパスを指定しない場合、ログ ファイルはカレント フォルダに作成されます。SQL Server 2000 SP3a CD-ROM からセットアップを実行している場合は、ディスク上のフォルダへのフルパスを指定する必要があります。次の例は、ログ ファイル MSDELog.log を C: ドライブのルート フォルダに作成します。

setup /upgradesp sqlrun DISABLENETWORKPROTOCOLS=1 /L*v C:/MSDELog.log

ページのトップへ

3.7.4 MSDE 2000 の既存のインスタンスの SP3a へのアップグレード

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

このセクションの例は、MSDE 2000 の既存のインスタンスを SP3a にアップグレードし、MSDE 2000 のそのインスタンスのネットワーク接続も無効にします。他のコンピュータで実行されているアプリケーションからの接続を受け入れる必要がある場合は、DISABLENETWORKPROTOCOLS パラメータを指定しないでください。

このセクションの例は、sa ログインに強固なパスワードが割り当てられていることを想定しています。sa ログイン パスワードの詳細については、「3.7.2 MSDE 2000 SP3a のセキュリティの考慮点」を参照してください。

SQL Server 2000 Desktop Engine をアップグレードする方法

  1. コマンド プロンプト ウィンドウを開きます。

  2. コマンド プロンプトから、次のように cd コマンドを使用して、MSDE 2000 SP3a セットアップ ユーティリティを含むフォルダに移動します。
    cd c:\MSDESP3aFolder\MSDE

    ここで c:\MSDESP3aFolder は、MSDE 2000 SP3a ファイルの展開先のフォルダへのパスか、SQL Server 2000 SP3a CD-ROM の Desktop Engine SP3a フォルダのいずれかになります。

  3. 以下のコマンドのいずれかを実行します。

Windows 認証モードを使用する既定のインスタンスの場合は、次のコマンドを実行します。

setup /upgradesp sqlrun DISABLENETWORKPROTOCOLS=1

Windows 認証モードを使用する名前付きインスタンスの場合は、次のコマンドを実行します。

setup /upgradesp sqlrun INSTANCENAME=InstanceName DISABLENETWORKPROTOCOLS=1

混在モードを使用する既定のインスタンスの場合は、次のコマンドを実行します (ここで AnAdminLogin は sysadmin 固定サーバー ロールのメンバです)。

setup /upgradesp sqlrun SECURITYMODE=SQL UPGRADEUSER=AnAdminLogin UPGRADEPWD=AdminPassword DISABLENETWORKPROTOCOLS=1

混在モードを使用する名前付きインスタンスの場合は、次のコマンドを実行します (ここで AnAdminLogin は sysadmin 固定サーバー ロールのメンバです)。

setup /upgradesp sqlrun INSTANCENAME=InstanceName SECURITYMODE=SQL UPGRADEUSER=AnAdminLogin UPGRADEPWD=AdminPassword DISABLENETWORKPROTOCOLS=1

重要 セットアップに .ini ファイルを使用する場合は、.ini ファイルに機密情報を格納しないでください。

注意 Windows 98 または Windows Millennium Edition を実行しているコンピュータで Desktop Engine をアップグレードするときは、セットアップを開始する前にアップグレードする Desktop Engine のインスタンスを停止する必要があります。

ページのトップへ

3.7.5 MSDE 2000 SP3a の新規インスタンスのインストール

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

このセクションの例は、ネットワーク接続が無効に設定された MSDE 2000 SP3a の新規インスタンスをインストールします。インスタンスが、他のコンピュータで実行されているアプリケーションからの接続を受け入れる必要がある場合は、DISABLENETWORKPROTOCOLS=0 も指定します。

以下の例は、照合順序、ファイルの場所など、すべての設定項目に既定値を使用して、インスタンスをインストールします。COLLATION、DATADIR、TARGETDIR などのセットアップ パラメータで設定を制御できます。セットアップで指定できる設定パラメータの詳細については、SQL Server 2000 Books Online (アップデート – SP3) の「Desktop Engine の Setup.exe のカスタマイズ」を参照してください。SQL Server 2000 Books Online (アップデート - SP3) のインストールの詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。

Desktop Engine の新規インスタンスをインストールする方法

  • コマンド プロンプト ウィンドウを開きます。

  • コマンド プロンプトから、次のように cd コマンドを使用して、MSDE 2000 SP3a セットアップ ユーティリティを含むフォルダに移動します。

    cd c:\MSDESP3aFolder\MSDE

    ここで c:\MSDESP3aFolder は、MSDE 2000 SP3a ファイルの展開先のフォルダへのパスか、SQL Server 2000 SP3a CD-ROM の Desktop Engine SP3a フォルダのいずれかになります。

  • 以下のコマンドのいずれかを実行します。

Windows 認証モードを使用するように構成された既定のインスタンスをインストールするには、次のコマンドを実行します。

setup SAPWD="AStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強固なパスワードです。

Windows 認証モードを使用するように構成された名前付きインスタンスをインストールするには、次のコマンドを実行します。

setup INSTANCENAME="InstanceName" SAPWD="AStrongSAPwdAStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強固なパスワードで、InstanceName はそのインスタンスに割り当てられる名前です。

混在モードを使用するように構成された既定のインスタンスをインストールするには、次のコマンドを実行します。

setup SAPWD="AStrongSAPwd" SECURITYMODE=SQL

ここで AStrongSAPwd は sa ログインに割り当てられた強固なパスワードです。

混在モードを使用するように構成された名前付きインスタンスをインストールするには、次のコマンドを実行します。

setup INSTANCENAME="InstanceName" SECURITYMODE=SQL SAPWD="AStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強固なパスワードで、InstanceName はそのインスタンスに割り当てられる名前です。

重要 セットアップに .ini ファイルを使用する場合は、.ini ファイルに機密情報を格納しないでください。

重要 Windows 認証モードを使用するようにインスタンスを構成しているときでも、常に、sa ログインには強固なパスワードを指定してください。

ページのトップへ

3.7.6 MSDE 1.0 から MSDE 2000 SP3a へのアップグレード

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

このセクションの例は、MSDE 1.0 の既存のインスタンスを MSDE 2000 SP3a にアップグレードし、そのインスタンスのネットワーク接続も無効にします。他のコンピュータで実行されているアプリケーションからの接続を受け入れる必要がある場合は、DISABLENETWORKPROTOCOLS パラメータを指定しないでください。

MSDE 1.0 は、MSDE 2000 の既定のインスタンスと同じ形式で動作するので、常に、MSDE 2000 の既定のインスタンスにアップグレードされます。

Desktop Engine Version 1.0 からアップグレードする方法

  • コマンド プロンプト ウィンドウを開きます。

  • コマンド プロンプトから、次のように cd コマンドを使用して、MSDE 2000 SP3a セットアップ ユーティリティを含むフォルダに移動します。
    cd c:\MSDESP3aFolder\MSDE

    ここで c:\MSDESP3aFolder は、MSDE 2000 SP3a ファイルの展開先のフォルダへのパスか、SQL Server 2000 SP3a CD-ROM の Desktop Engine SP3a フォルダのいずれかになります。

  • 以下のコマンドのいずれかを実行します。

Windows 認証モードを使用しているときは、次のコマンドを実行します。

setup UPGRADE=1 DISABLENETWORKPROTOCOLS=1

混在モードを使用しているときは、次のコマンドを実行します (ここで AnAdminLogin は sysadmin 固定サーバー ロールのメンバです)。

setup UPGRADE=1 SECURITYMODE=SQL UPGRADEUSER=AnAdminLogin UPGRADEPWD=AdminPassword DISABLENETWORKPROTOCOLS=1

注意 BLANKSAPWD=1 を使用する場合は、SECURITYMODE=SQL または UPGRADEUSER と UPGRADEPWD を指定する必要はありません。

注意 ブランク パスワードをしようしないことを強くお勧めします。

重要 セットアップに .ini ファイルを使用する場合は、.ini ファイルに機密情報を格納しないでください。

ページのトップへ

3.7.7 MSDE 2000 SP3a の再配布

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

Desktop Engine SP3a は、アプリケーション ベンダが MSDE 2000 を配布するライセンスを所持するという条件で、アプリケーションと共に MSDE 2000 を再配布するために必要なファイルをすべて含んでいます。ユーザーは、SQL Server 2000 Books Online (アップデート SP3) に記載されている内容と、次のセクションで説明する SP3a 固有の変更点に従って、Desktop Engine SP3a ファイルを配布できます。

SQL Server 2000 Books Online (アップデート - SP3) のインストールの詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。

Desktop Engine SP3a 修正プログラムの配布

アプリケーションが Windows インストーラ ベースのセットアップ ユーティリティを所持する場合は、MSDN 2000 マージ モジュールを使用して、MSDE 2000 のインスタンスをインストールできます。Desktop Engine (MSDE 2000) SP3a は、マージ モジュールを使用する既存のアプリケーションをサポートするために、マージ モジュールを提供します。新しいアプリケーションのセットアップ ユーティリティは、MSDE 2000 マージ モジュールを直接使用するのではなく、MSDE 2000 セットアップ ユーティリティを呼び出すように作成する必要があります。

MSDE 2000 マージ モジュールを使用して MSDE 2000 のインスタンスをインストールすることを選択したベンダは、MSDE 2000 のその後のすべての修正プログラムもユーザーに提供する必要があります。マージ モジュールを使用してインストールした MSDE 2000 のインスタンスは、Windows インストーラがそのアプリケーションに関連付けた製品コード GUID でマークされます。そのアプリケーション製品コード GUID を含む修正プログラム ファイルだけが、MSDE 2000 の対応するインスタンスに修正プログラムを適用できます。そのアプリケーション ベンダが作成した修正プログラム ファイルだけが、適切な製品コードを保持することになります。Microsoft が提供する Desktop Engine (MSDE 2000) Service Pack は、このようなインスタンスに適用できません。アプリケーション ベンダは、Desktop Engine SP3a ファイルを使用して修正プログラム ファイルを構築し、SP3a の修正項目を必要とするすべての MSDE ユーザーに構築した修正プログラムを配布する必要があります。

修正プログラム パッケージの作成の詳細については、「 Microsoft Download Center」からダウンロードできる Windows Installer Software Development Kit (SDK) に含まれているドキュメントを参照してください。

アプリケーションのセットアップ ユーティリティが MSDE 2000 セットアップ ユーティリティを呼び出してインスタンスをインストールしている場合は、その MSDE 2000 のインスタンスは MSDE 2000 製品コード GUID でマークされます。ユーザーは、このようなインスタンスに対しては標準の Microsoft MSDE 2000 Service Pack ファイルを使用して修正プログラムを適用できます。アプリケーション ベンダは、MSDE 2000 SP3a の配布に、以下の方法のいずれかを選択できます。

  • SQL Server 2000 SP3a ダウンロード ページまたは SQL Server 2000 SP3a CD-ROM のいずれかから Desktop Engine SP3a をインストールするようにユーザーに指示します。

  • JPN_SQL2KDeskSP3.exe ダウンロード ファイルをダウンロードし、Service Pack を適用する方法についての指示と共にそのファイルをユーザーに配布します。

  • Desktop Engine SP3a ファイルを使用して、アプリケーションがインストールした MSDE 2000 のインスタンスに SP3a をインストールする Service Pack アプリケーション ユーティリティを構築します。

SP3a を直接適用するようにユーザーに指示することを選択したアプリケーション ベンダは、ユーザーのニーズに合わせてカスタマイズした一連の指示を作成する必要があります。

ユーザー向けに Microsoft アプリケーション チームが用意した MSDE 2000 Service Pack の指示の例については、Microsoft MSDE Applications Web ページを参照してください。

ページのトップへ

3.7.8 MSDE 2000 SP3a ファイルの場所

以下は、Desktop Engine (MSDE 2000) のみに適用されます。

すべての Desktop Engine SP3a インストール ファイルとフォルダは、以下の場所の \MSDE フォルダにあります。

  • SQL Server 2000 SP3a CD-ROM。

  • JPN_SQL2KDeskSP3.exe から展開した Service Pack ファイルを含むディレクトリ。

\MSDE フォルダには、SP3readme.htm ファイル、readme.txt ファイル、license.txt ファイル、および Setup ユーティリティの実行可能ファイルが含まれます。このフォルダには、以下のサブフォルダも含まれます。

  • \Msi: Windows インストーラをインストールするため、または 2.0.2600.0 よりも前の Windows インストーラを使用している場合にアップグレードするために必要な実行可能ファイルを保持します。

  • \MSM: マージ モジュール セットアップに必要なマージ モジュールを保持します。

  • \Setup: MSDE 2000 SP3a の新規インスタンスをインストールするために MSDE 2000 Setup が必要とする .msi インストール パッケージ ファイル、または MSDE 2000 の既存のインスタンスを SP3a にアップグレードするための msp 修正プログラム パッケージ ファイル、および Setup がインストールするファイルを含む sqlrun.cab キャビネット ファイルを保持します。

Desktop Engine マージ モジュールの使用の説明については、SQL Server Books Online の「SQL Server Desktop Engine マージ モジュールの使用」を参照してください。

アプリケーションのセットアップが MSDE 2000 Setup を呼び出している場合は、以下の構造とファイルのセットを持つフォルダを構築します (ここで MSDEInstallFolder はフォルダ名の例を表します)。

MSDEInstallFolder

Desktop Engine SP3a \MSDE フォルダから次のファイルをコピーします。Setup.exe、Setup.ini、Setup.rll、および sqlresld.dll。

MSDEInstallFolder\Msi

Desktop Engine SP3a \MSDE\Msi フォルダからすべてのファイルをコピーします。

MSDEInstallFolder\Setup

Desktop Engine SP3a \MSDE\Setup フォルダからすべてのファイルをコピーします。

その後、MSDE 2000 SP3a のインスタンスをインストールまたはアップグレードするために、Setup.exe を実行できます。

コンピュータに Windows インストーラがインストールされていない場合、または MSDE 2000 SP3a Setup でテスト済みのバージョンよりも前のバージョンがインストールされている場合、Setup は MSDEInstallFolder\Msi フォルダ内のファイルを使用して、Windows インストーラをアップグレードします。

ページのトップへ

3.8 サービスの再開

以下は、すべてのコンポーネントに適用されます。

セットアップが完了すると、システムの再起動が要求されることがあります。システムの再起動後 (または、再起動が要求されないで Setup プログラムが終了した後)、コントロール パネルの [サービス] アプリケーションを使用して、Service Pack の適用を行う前に停止したすべてのサービスが実行されていることを確認します。このようなサービスには、MS DTC と Microsoft Search、MSSQLServer、MSSQLServerOLAPService、および SQLServerAgent の各サービス、またはインスタンス固有の同等のサービスなどがあります。

念のため、この時点でアップグレードした master データベースと msdb データベースをバックアップします。

ページのトップへ

3.9 アプリケーションの再開

以下は、すべてのコンポーネントに適用されます。

Service Pack のセットアップを実行する前に終了したアプリケーションを再開します。

ページのトップへ

3.10 フェールオーバー クラスタへのインストール

以下は、フェールオーバー クラスタの一部である SQL Server 2000 コンポーネントだけに適用されます。

  1. フェールオーバー クラスタにこの Service Pack をインストールする方法

  2. SQL Server リソースと従属関係を持つ任意のリソースを追加していた場合は、SP3a をインストールする前に、これらの従属リソースを削除するか、オフラインにしておく必要があります。これを行わないと、SP3a のインストールにより、これらの従属リソースにフェールオーバーする場合があります。

  3. アップグレードする仮想サーバーを含んでいるグループを所有するノードからこの Service Pack を実行します。この結果、Service Pack ファイルがすべてのフェールオーバー クラスタ ノードにインストールされます。

  4. [セットアップ] ダイアログ ボックスで、アップグレードする仮想サーバーの名前を入力します。

  5. セットアップ中はクラスタのすべてのノードをオンラインのままにします。この結果、クラスタの各ノードにアップグレードが適用されることを保証します。

  6. 上記の手順 1 で従属関係を削除するか、リソースをオフラインにした場合は、従属関係を再度追加するか、リソースをオンラインに戻します。

注意 Setup はフェールオーバー クラスタ ノードの再起動を必要とすることがあります。再起動により、Setup 実行中に使用中だったファイルを更新されたファイルに置き換えます。

SQL Server の既定の (クラスタ化されていない) インスタンスを仮想サーバーにアップグレードする場合は、まず既定の (クラスタ化されていない) インスタンスから仮想インスタンスにアップグレードする必要があります。 その後 SP3a を適用します。アップグレードの詳細については、SQL Server Books Online の「既定のインスタンスから SQL Server 2000 の既定のクラスタ化インスタンスにアップグレードする方法 (セットアップ)」を参照してください。

フェールオーバー クラスタへの SP3a のインストールに関する詳細については、Knowledge Base の記事  811168 を参照してください。

フェールオーバークラスタ内のノードを再構築する必要がある場合は、以下の手順を実行します。

  1. フェールオーバー クラスタでノードを再構築します。ノードの再構築の詳細については、SQL Server Books Online の「フェールオーバー クラスタ障害回復の例 1」を参照してください。

  2. 元の SQL Server 2000 Setup プログラムを実行して、そのノードを再度フェールオーバー クラスタに追加します。

  3. 新しく追加したノードで SP3a Setup を実行します。この結果、新しいノードのバイナリだけが SP3a にアップデートされます。

注意 仮想サーバーを実行しているノードから Setup を実行する場合は、すべてのノードに SP3a を再適用する必要があります。データベース アップグレード スクリプトも再実行する必要があります。

クラスタに Analysis Services SP3a をインストールするときは、各インスタンスを個別にアップグレードする必要があります。

Analysis Services クラスタに SP3a をインストールする方法

  1. フェールオーバー ノードに SP3a をインストールします。

  2. 新しくアップグレードしたノードにフェールオーバーします。

  3. クラスタ内のすべてのインスタンスがアップグレードされるまで、手順 1 と 2 を繰り返します。

ページのトップへ

3.11 レプリケートされているサーバーへのインストール

以下は、レプリケーション トポロジの一部である SQL Server 2000 コンポーネントだけに適用されます。

  • パブリッシャをアップグレードする前に、ディストリビュータをアップグレードする必要があります。

  • 読み取り専用のサブスクライバを使用するトランザクション レプリケーションに基づくレプリケーション トポロジでは、パブリッシャとディストリビュータの両方をアップグレードする前か、両方をアップグレードした後に、サブスクライバをアップグレードできます。

  • 更新サブスクライバを使用するマージ レプリケーションまたはトランザクション レプリケーションに基づくレプリケーション トポロジでは、パブリッシャとディストリビュータをアップグレードした後にサブスクライバをアップグレードする必要があります。

注意 ほとんどの場合、特にマージ レプリケーションの場合、ディストリビュータとパブリッシャは同じサーバー上に存在するので、同時にアップグレードされます。

パブリッシャおよびサブスクライバとして動作するサーバーへの SP3a のインストール

更新サブスクライバを使用するマージ レプリケーションまたはトランザクション レプリケーションに基づくレプリケーション トポロジで、サブスクライバとパブリッシャ (またはディストリビュータ) の両方として動作する 1 台以上のサーバーを含む場合、システムを休止し (つまり、すべてのアップデートを停止し)、すべてのサーバーを同時にアップグレードする必要があります。

例 1: 同時アップグレードを必要とするトポロジ

以下の表は、サブスクライバで更新できるパブリケーションのパブリッシュとサブスクライブを両方行うサーバーを含みます。上記で説明したように、サブスクライバでの更新を許可するトポロジでは、ディストリビュータ、パブリッシャ、サブスクライバの順にアップグレードする必要があります。この順序により、マージ パブリケーションではサーバー A を最初にアップグレードする必要があり、更新サブスクライバを使用するトランザクション パブリケーションではサーバー B を最初にアップグレードする必要があります。このような場合には、システムを停止し、サーバーを同時にアップグレードする必要があります。

サーバー Aサーバー B
マージ レプリケーションのパブリッシャ/ディストリビュータマージ レプリケーションのサブスクライバ
更新を伴うトランザクション レプリケーションのサブスクライバ更新を伴うトランザクション レプリケーションのパブリッシャ/ディストリビュータ

例 2: 順番にアップグレードできるトポロジ

読み取り専用のトランザクション パブリケーションではパブリッシャ/ディストリビュータをアップグレードする前にサブスクライバをアップグレードできるので、この例ではサーバー A を最初にアップグレードできます。

サーバー Aサーバー B
マージ レプリケーションのパブリッシャ/ディストリビュータマージ レプリケーションのサブスクライバ
読み取り専用トランザクション レプリケーションのサブスクライバ読み取り専用トランザクション レプリケーションのパブリッシャ/ディストリビュータ

その他のレプリケーションインストールの問題点

重要 SP3a にアップグレードする前に、SQL Server サービスを実行する Windows アカウントが sysadmin 固定サーバー ロールのメンバであることを確認してください。レプリケーションのディストリビューション データベースは SQL Server サービス アカウントのコンテキストでアップグレードされるので、これを行う必要があります。SP3a にアップグレードした後に、その Windows アカウントを sysadmin ロールから削除する必要があります。

マージ レプリケーションを使用していて、ディストリビュータが別のコンピュータまたは別のデータベース インスタンス (リモート ディストリビュータ) に配置されている場合は、SP3a を適用した後に新しくスナップショットを生成する必要があります。

SP3a では、 レプリケーション データベースをアタッチまたは復元する必要条件が変更になりました。詳細については、「5.3.17 レプリケーション データベースのアタッチまたは復元の必要条件の変更」を参照してください。

SP3a Setup はレプリケーション トポロジのメンバであるユーザー データベースをアップグレードします。レプリケーション トポロジのメンバであるデータベースのいずれかが書き込み可能ではない場合に、これらのデータベースに SP3a を適用するには、これらのデータベースを書き込み可能にしてから、SP3a Setup を再適用する必要があります。データベースを書き込み可能にすることに関する詳細については、「3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用」を参照してください。SP3a の再適用の詳細については、「3.14 SP3a の再適用」を参照してください。

レプリケーションを考慮した既存のバックアップ手法は、障害が発生した場合に、SP3a にアップグレード後の既知の時点にデータベースを回復することを許可します。SP3a を適用後に、レプリケーション トポロジに関係するすべてのユーザー データベースのログ バックアップまたは完全データベース バックアップを行うことをお勧めします。バックアップを行っておくと、レプリケーション データベースで障害が発生した場合に、データベースを復元後に SP3a を再適用する必要がありません。

ページのトップへ

3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用

以下は、レプリケーション トポロジの一部である SQL Server 2000 コンポーネントだけに適用されます。

書き込み可能ではないデータベースまたはファイル グループが存在するとき、Setup プログラムは以下のメッセージを表示します。

書き込み可能ではない 1 つ以上のデータベースとファイルグループを検出しました。

一般的には、このメッセージを無視し、セットアップを続行します。ただし、Setup ログに一覧された書き込み可能ではないデータベースのいずれかがレプリケーション トポロジのメンバである場合は、これらのデータベースを書き込み可能にし、SQL Server 2000 のインスタンスに SP3a Setup を再適用する必要があります。

注意 このメッセージは自動インストールには影響しません。自動インストールの詳細については、「4.1 自動インストール」を参照してください。

注意 Setup は、インストール中に書き込み可能ではないデータベースと、オフラインまたは問題のあるデータベースを区別しません。セットアップ中にこれらの条件のいずれかを満たすデータベースまたはファイル グループが存在する場合は、Service Pack を再適用する必要があります。データベースをオンラインにすることに関する詳細については、SQL Server Books Online の「データベースをアタッチまたはデタッチする方法」を参照してください。また、問題のあるデータベースの診断の詳細については、SQL Server Books Online の「サーバーおよびデータベースに関するトラブルシューティング」を参照してください。

書き込み可能ではないデータベースに SP3a を適用する方法

以下のように、ALTER DATABASE を使用して、書き込み可能ではないデータベースを書き込み可能にします。

ALTER DATABASE database SET READ_WRITE

すべての書き込み可能ではないデータベースに対して手順 1 を繰り返します。

Service Pack を適用 (または再適用) します。

必要に応じて、以下のように、ALTER DATABASE を使用して、データベースを再度書き込み不可にします。

ALTER DATABASE database SET READ_ONLY

書き込み可能ではないファイルグループに SP3a を適用する方法

以下のように、 ALTER DATABASE を使用して、書き込み可能ではないファイル グループを書き込み可能にします。

ALTER DATABASE Database  
MODIFY FILEGROUP filegroup_name READWRITE

すべての書き込み可能ではないファイル グループに対して手順 1 を繰り返します。

Service Pack を適用 (または再適用) します。

以下のように、ALTER DATABASE を使用して、ファイル グループを再度読み取り専用にします。

ALTER DATABASE Database  
MODIFY FILEGROUP filegroup_name READONLY

ALTER DATABASE の詳細については、SQL Server Books Online の「ALTER DATABASE」リファレンスを参照してください。SP3a の再適用の詳細については、「SP3a の再適用」を参照してください。

ページのトップへ

3.13 SP3a のアンインストール

削除する SQL Server 2000 SP3a コンポーネントによって、SQL Server SP3a を削除する方法が異なります。

注意 MDAC のアップデートはアンインストールされません。詳細については、「5.5.1 Microsoft Data Access Components のアップデート」を参照してください。

SQL Server 2000 コンポーネントと Desktop Engine SP3a のアンインストール

SQL Server 2000 コンポーネントを SP3a 適用前の状態に戻すには、SP3a をインストールする前の master、msdb、および model データベースのバックアップを所持している必要があります。詳細については、「3.1 SQL Server データベースのバックアップ」を参照してください。

注意 レプリケーションに関係しているデータベースが存在する場合は、パブリッシュを無効にする必要があります。パブリッシュを無効にするには、以下の手順を実行します。

  1. SQL Server Enterprise Manager で、SQL Server グループ、サーバーを展開し、[レプリケーション] フォルダを右クリックします。 その後、[パブリッシング、サブスクライバ、およびディストリビューションの設定] をクリックします。

  2. [パブリケーション データベース] タブをクリックします。

  3. レプリケーションに関係しているデータベースごとにチェック ボックスをオフします。この結果、そのデータベースがデタッチされます。

Analysis Services を SP3a を適用する以前のバージョンに戻す方法

  1. すべてのユーザー データベースをデタッチします。詳細については、SQL Server Books Online の「データベースをアタッチまたはデタッチする方法 (Enterprise Manager)」を参照してください。

  2. SQL Server をアンインストールします。[コントロール パネル] で、[アプリケーションの追加と削除] をダブルクリックし、アンインストールする SQL Server のインスタンスを選択します。

  3. CD-ROM または最初に SQL Server をインストールした場所から、SQL Server 2000 をインストールします。

  4. SP3a 以前にインストールしたすべての Service Pack と QFE 修正プログラムを適用します。

  5. SP3a を適用する前に作成した最新のバックアップから master、msdb、および model データベースを復元します。この結果、データ ファイルの場所が変更されていないことを前提として、バックアップが作成された時点でアタッチされていたすべてのユーザー データベースが自動的にアタッチされます。

  6. master データベースを最後にバックアップした後に作成したすべてのユーザー データベースをアタッチします。

  7. 必要に応じて、レプリケーションを設定します。

  8. 警告 SQL Server を SP3 以前のバージョンに戻すと、SP3a 適用後に master、msdb、および model データベースに対して行われたすべての変更が失われます。

SQL Server 2000 Analysis Services SP3a のアンインストール

Analysis Services を SP3a 以前の状態に戻すことを可能にするには、SP3a をインストールする前に HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server レジストリ キーをバックアップしておく必要があります。詳細については、「3.2 Analysis Services データベースとリポジトリのバックアップ」を参照してください。

注意 このレジストリ キーをバックアップしなかった場合は、Microsoft Knowledge Base の記事 330244 に記載されている手順に従う必要があります。

SQL Server 2000 Analysis Services を SP3a を適用する以前のバージョンに戻す方法

  1. SQL Server 2000 Analysis Services をアンインストールします。[コントロール パネル] で、[アプリケーションの追加と削除] をダブルクリックし、[SQL Server 2000 Analysis Services] をクリックして、[削除] をクリックします。

  2. CD-ROM または最初に Analysis Services をインストールした場所から、SQL Server 2000 Analysis Services を再インストールします。

  3. SP3a 以前にインストールしたすべての Service Pack と QFE 修正プログラムを適用します。

  4. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server レジストリ キーを削除します。

  5. SP3a 以前のバックアップから HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server レジストリ キーを再インストールします。

ページのトップへ

3.14 SP3a の再適用

以下は、すべてのコンポーネントに適用されます。

以下の場合に、SP3a を再適用する必要があります。

  • SP3a を適用した後に、新しい SQL Server 2000 コンポーネントを追加したとき。

  • レプリケーション トポロジの一部で、SP3a を最初に適用したときに書き込み可能ではなかったデータベースまたはファイル グループが書き込み可能になったとき。

SP3 を再適用するには、「3.0 Service Pack のインストール」の手順に従います。

ページのトップへ

4.0 その他のインストールの考慮点

ここでは、特殊な場合にのみ適用される Service Pack インストールのその他の考慮点について説明します。

ページのトップへ

4.1 自動インストール

データベース コンポーネント SP3a は、SQL Server のインスタンスに自動モードで適用できます。データベース コンポーネント SP3a CD-ROM には、SP3a の自動インストールやその他の種類のインストールを実行するために使用できる .iss ファイルが含まれています。これらのファイルは CD-ROM のルート ディレクトリにあります。

  • Sql2kdef.iss は、Windows 2000 または Windows NT 4.0 で実行されている SQL Server 2000 の既定のインスタンスにデータベース コンポーネント SP3a を適用するために使用する自動セットアップ ファイルです。対応するバッチ ファイルとして Sql2kdef.bat を使用します。

  • Sql2kdnm.iss は、Windows 2000 または Windows NT 4.0 で実行されている SQL Server 2000 の名前付きインスタンスにデータベース コンポーネント SP3a を適用するために使用するセットアップ ファイルです。アップグレードするインスタンスを識別するために、この .iss ファイル内のインスタンス名を変更する必要があります。

  • Sql2ktls.iss は、ツールのみのインストールにデータベース コンポーネント SP3a を適用するために使用するセットアップ ファイルです。このファイルは、何も変更しないでインストールに使用できます。

  • Sql2k9x.iss は、Windows Millennium Edition または Windows 98 を実行しているコンピュータにデータベース コンポーネント SP3a を適用するために使用するセットアップ ファイルです。 アップグレードするインスタンスを識別するために、この .iss ファイル内のインスタンス名を変更する必要があります。

  • Sql2kcli.iss は、Windows 95 を実行しているコンピュータのクライアント コンポーネント インストールにデータベース コンポーネント SP3a を適用するために使用するセットアップ ファイルです。

  • Msolap.iss は、Analysis Services SP3a の自動インストールを実行するためのパラメータのリストを格納するセットアップ ファイルです。

SQL Server 2000 の自動インストールの実行に関する詳細については、SQL Server Books Online の「自動インストールの実行」を参照してください。

自動インストールの考慮点

自動インストールに関して以下の考慮点があります。

  • 自動インストールは、できる限り Windows 認証を使用して実行します。

  • SQL Server 認証を使用して自動インストールを実行する必要がある場合、たとえば、Windows 98 または Windows Millennium Edition を実行しているコンピュータで SP3a の自動インストールを実行する場合、.iss ファイルやバッチ ファイルは暗号化されないので、これらのファイルに sa ログインのパスワードを含めてはいけません。代わりに、コマンド ラインで以下のように sapwd パラメータを使用して sa ログインのパスワードを指定する必要があります。

start /wait setupsql.exe -s -sms -f1 C:\sql2knm.iss -sapwd password
  • SP3a にアップグレードされる SQL Server インスタンスが sa ログイン アカウントにブランク パスワードを使用している場合、自動インストールを実行する前にパスワードを指定する必要があります。sp_password を実行して、このパスワードを変更する必要があります。

  • SP3a の自動インストールを実行するときに、[旧バージョンとの互換性チェックリスト] ダイアログ ボックスに対応する以下のセットアップ スイッチを手作業で設定する必要があります。 設定しないと、自動インストールに失敗します。

自動インストール スイッチ説明
UpgradeMSSearchフルテキスト カタログの必須の再構築の考慮点に対処するためにこのスイッチが必要になります。フルテキスト検索が有効な場合は、このスイッチを 1 に設定する必要があります。詳細については、「5.1.5 セットアップ完了後のフルテキスト カタログの再構築」を参照してください。
MSXTSXUpgradedマスタ/対象サーバー構成のアップグレードに関する問題に対処するためにこのスイッチが必要になります。マスタ サーバーまたは対象サーバーに SP3a を適用しているときは、このスイッチを 1 に設定する必要があります。詳細については、「5.4.2 マスタ/対象サーバー構成の変更」を参照してください。
EnableCrossDBChaining(省略可能) 複数データベースの組み合わせ所有権を有効にするためにこのスイッチを使用します。複数データベースの組み合わせ所有権を有効にするには、このスイッチを 1 に設定します。詳細については「5.1.11 複数データベースの組み合わせ所有権」を参照してください。
  • 自動インストール中に、Setup が書き込み可能ではないデータベースまたはファイル グループを検出した場合は、その情報が Setup ログに書き込まれ、自動インストールは続行されます。Setup ログに一覧された書き込み可能ではないデータベースのいずれかがレプリケーション トポロジのメンバである場合は、これらのデータベースを書き込み可能にし、その SQL Server 2000 のインスタンスに SP3a Setup を再適用する必要があります。 データベースを書き込み可能にすることに関する詳細については、「3.12 書き込み可能ではないデータベースまたはファイル グループへの SP3a の適用」を参照してください。SP3a の再適用の詳細については、「3.14 SP3a の再適用」を参照してください。

ページのトップへ

4.2 SP3a Data Access Components の再配布

データベース コンポーネント SP3a には自己解凍形式のファイル Sqlredis.exe が含まれています。 Sqlredis.exe を実行すると以下のことを行います。

  1. Microsoft Data Access Components (MDAC) 2.7 Service Pack 1a から Mdac_typ.exe を実行します。 この操作により、MDAC 2.7 SP1a の主要なコンポーネント (同じバージョンまたはより新しいバージョンを検出しなかった場合) と、SP3a に含まれるバージョンの SQL Server および Desktop Engine のクライアント接続コンポーネントがインストールされます。詳細については、「5.5.1 Microsoft Data Access Components のアップデート」を参照してください。

  2. Microsoft Jet ODBC ドライバと接続コンポーネントをインストールします。 Sqlredis.exe ファイルは、SP3a に同梱されている Redist.txt ファイルに記載されている条件で再配布できます。

ページのトップへ

5.0 特記事項

ここでは SP3a を実行すると利用できる新機能と、発生する可能性のある問題点について説明します。これらの問題点は、SQL Server 2000、SQL Server 2000 SP1、または SQL Server 2000 SP2 からアップグレードするために Service Pack を実行するときに適用されるものです。ここで説明しているのは、SP3a で提供される問題点の解決結果ではありません。SP3a で解決された問題点の完全な一覧については、Microsoft Knowledge Base の記事  306908 を参照してください。

ここでの Analysis Services と Meta Data Services に関する説明は、Desktop Engine のみのインストールには適用されません。

この Readme ファイルを記述している時点で利用できなかった SQL Server 2000 Service Pack 3a 関連のすべての情報は、 Microsoft Knowledge Base の記事  816502 で公開する予定です。

この記事は、Microsoft Product Support Services Knowledge Base に公開されています。

ページのトップへ

5.1 データベースと Desktop Engine の機能強化

以下の機能強化は、データベース コンポーネント SP3a がインストールされた SQL Server 2000 インスタンスに適用されます。また、Desktop Engine SP3a がインストールされた MSDE 2000 インスタンスにも適用されます。

ページのトップへ

5.1.1 データベース コンポーネント SP3a での中国語、日本語、または韓国語文字の使用

(SP1 からの機能)

Windows NT 4.0 または Windows 98 を実行しているサーバーにデータベース コンポーネント SP3a をインストールし、その後 Windows 2000 にアップグレードした場合、Windows 2000 アップグレードは特定のシステム ファイルを置き換えます。これらのシステム ファイルは、中国語、日本語または韓国語の文字を並べ替えるために必要です。SQL Server データベースで中国語、日本語または韓国語の文字を使用している場合、Windows 2000 へのアップグレードを実行した後に、SP3a に同梱されているバージョンの Sqlredis.exe を再実行してください。 Sqlredis.exe の実行の詳細については、「4.2 SP3a Data Access Components の再配布」を参照してください。

注意 クライアント コンピュータ、または中国語、日本語、または韓国語の文字を含まないデータベースを使用しているサーバーでは、Sqlredis.exe を再適用する必要はありません。

ページのトップへ

5.1.2 ハッシュ チームの削除

(SP1 からの機能)

ハッシュ チームが削除されました。SQL Server 2000 に対する一定の機能強化により、ハッシュ チームは SQL Server Version 7.0 にもたらしたようなパフォーマンス上の利点は生じなくなりました。さらに、ハッシュ チームを削除することにより、SQL Server 2000 はより安定したものになります。

そのため、クエリ オプティマイザはハッシュ チームを使用したクエリ プランを生成しなくなりました。

めったにないケースですが、ハッシュ チームを削除したことにより、クエリの処理速度が低下することがありえます。より適したインデックスを作成することがクエリのパフォーマンスを以前のレベルに戻せるかどうかを確認するために、このようなクエリを分析します。

ページのトップへ

5.1.3 Affinity Mask スイッチの追加

(SP1 からの機能)

この Service Pack では 2 つの Affinity Mask スイッチが追加されました。

Affinity Mask I/O Switch

この Service Pack では、ディスク入出力操作のスレッドを実行するために、どの CPU を使用するかを指定できるようになりました。このスイッチは、affinity mask オプションと連携して使用する必要があります。詳細については、 Microsoft Product Support Services Knowledge Base の記事  298402 を参照してください。Knowledge Base の検索方法については、「1.5 SP3a に関する追加情報」を参照してください。

Affinity Mask Connection Switch

この Service Pack では、特定のネットワーク カードから 1 つのプロセッサまたはプロセッサのセットに SQL Server 接続をバインドするために、VIA (Virtual Interface Architecture) を有効にするように、システムを設定できます。このスイッチは、affinity mask オプションと連携して使用する必要があります。詳細については、 Microsoft Product Support Services Knowledge Base の記事  299641 を参照してください。

ページのトップへ

5.1.4 フィルタ選択されたインデックス付きビュー

(SP2 からの機能)

Microsoft Knowledge Base の記事  306467 で説明されている SQL Server 2000 のバグ 355069 が発生した場合、この Service Pack を適用して、それ以後データ変更による予期しない結果が生じることだけを防ぎます。したがって、この修正プログラムを適用するだけでなく、フィルタ条件を使用したビューに基づくすべてのインデックスを再作成する必要があります。詳細については、 Microsoft Product Support Services Knowledge Base を参照してください。

ページのトップへ

5.1.5 セットアップ完了後のフルテキスト カタログの再構築

(SP3 からの機能)

SP3 からアップグレードする場合を除いて、SP3a のインストールの一部としてすべてのフルテキスト カタログが再構築されます。この再構築は自動的に行われ、リソースを大量に使用します。この再構築が完了するまで、フルテキスト カタログに対するクエリは部分的な結果しか返さないか、まったく結果を返さないことがあります。SP3a のインストール後に、カタログが壊れていたこと、カタログのバージョンが古かったこと、および再構築する必要があったことを示すメッセージがシステム イベント ログに含まれています。

詳細については、Knowledge Base の記事  327217 を参照してください。 この記事では、再構築プロセス中にフルテキスト検索を利用できるようにする回避策や、自動的な再構築を防ぐ方法についても記載されています。

ページのトップへ

5.1.6 sp_change_users_login の構文変更

(SP3 からの機能)

@Action=Auto_Fix を指定して sp_change_users_login を実行するときに、パスワードの指定が必要になりました。sp_change_users_login は、そのユーザー用に作成する新しいログインにパスワードを割り当てます。以下の例は新しい@Password 引数を示しています。

sp_change_users_login [ @Action = ] 'action'  
[ , [ @UserNamePattern = ] 'user' ]  
[ , [ @LoginName = ] 'login' ] 
[ , [ @Password = ] 'password' ]

@Action=Auto_Fix を指定するときのみ @Password 引数を使用します。以下の例は、Auto_Fix を使用するときの sp_change_users_login コマンドの新しい構文を示します。SQL Server Books Online のその他の例は、変更されないままです。

USE pubs 
go 
EXEC sp_change_users_login 'Auto_Fix', 'Mary', NULL, 'B3r12-36' 
go

ページのトップへ

5.1.7 既定で無効になっている OLE DB プロバイダへのアドホック アクセス

(SP3 からの機能)

DisallowAdhocAccess レジストリ オプションが明示的に設定されていない場合は、特に指定しない限り、OLD DB プロバイダへのアドホック アクセスは許可されません。これは、OPENDATASOURCE や OPENROWSET などのアドホック クエリ構文がリモート サーバーに対して機能しないことを意味します。アドホック アクセスを許可するためには、DisallowAdhocAccess オプションを明示的に 0 に設定する必要があります。

ページのトップへ

5.1.8 新しい SqlServerLike プロバイダ オプション

(SP3 からの機能)

LIKE 述語を含むリモート クエリのより効果的な処理を可能にするために、SP3 で SqlServerLike オプションが追加されました。SQL Server 2000 SP3 以降では、リンク サーバーに LIKE 演算を送信するために、2 つの選択肢を持つようになりました。リンク サーバーの OLE DB プロバイダが、LIKE 演算子やワイルド カードに対して SQL Server 構文をサポートする場合、SQL Server が SQL Server 構文を使用して LIKE 演算を送信するために、SqlServerLIKE オプションを指定できます。リンク サーバーの OLE DB プロバイダが、Entry Level ANSI/ISO SQL-92 構文をサポートすることをレポートする場合、または SQLPROP_ANSILIKE プロパティを返す場合は、SQL Server は SQL-92 構文を使用して、LIKE 演算をリンク サーバーに送信します。SQLPROP_ANSILIKE の詳細については、SQL Server 2000 Books Online の「SQLPROPSET_OPTHINTS プロパティ セットのプログラミング」を参照してください。

OLE DB プロバイダの SqlServerLIKE オプションを有効にするには、レジストリ キー値を追加する必要があります。

意 レジストリの編集を誤ると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。Microsoft は、レジストリを誤って編集したことにより発生した問題に関しては、一切責任を負わないものとします。レジストリを編集する前に、重要なデータをすべてバックアップしてください。

  • Regedit32 を開きます

  • 以下の適切なレジストリ キーを検索します。

    • 名前付きのインスタンスの場合は、次のキーを検索します。

      HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instance Name>\Providers\<Provider Name>

    • 既定のインスタンスの場合は、次のキーを検索します。

      HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Providers\<Provider Name>

  • <Provider Name> キーに、SqlServerLIKE という名前の DWORD 値を追加し、その値に 1 を設定します。

ページのトップへ

5.1.9 分散クエリの拡張エラー メッセージ

(SP3 からの機能)

分散クエリでは、SQL Server はサーバー エラー情報以外にプロバイダ エラー情報も返します。SQL Server はリンク サーバー間のクエリがエラーになるときに、プロバイダが IErrorRecords OLE DB インターフェイスをサポートするかどうかを確認します。このインターフェイスをサポートする場合、SQL Server は GetErrorInfo 関数を呼び出してプロバイダから詳細エラー情報を取得し、この情報をエラー メッセージの一部として返します。IErrorRecords インターフェイスをサポートしていない場合は、SQL Server の動作に変更はなく、SQL Server は汎用のエラーを返します。

たとえば、MSDASQL を使用するサーバーに対して以下のクエリを実行します。 MSDASQL は sql_variant をサポートしません。

SELECT * FROM remote2k.dqtable.dbo.sqlvariantnotnull  
--Remote2k はループバック サーバーです。

SP3 以前は、SQL Server は以下のエラー メッセージを返しました。

サーバー:メッセージ 7356、レベル 16、状態 1、行 1 
OLE DB プロバイダ  msdasql' は列に対して一貫性のないメタ データを提供しました。 
実行時にメタ データ情報が変更されました。

SP3 以降を適用後は、SQL Server は以下のエラー メッセージを返します。

サーバー:メッセージ 7356、レベル 16、状態 1、行 1 
OLE DB プロバイダ 'msdasql' は列に対して一貫性のないメタ データを提供しました。 
実行時にメタ データ情報が変更されました。 
OLE DB エラー トレース [Non-interface error:Column 'sql_variant' (compile-time 
ordinal 3) of object '"dqtable"."dbo"."sqlvariantnotnull"' was reported 
to have a DBCOLUMNFLAGS_ISFIXEDLENGTH of 16 at compile time and 0 at run time].

ページのトップへ

5.1.10 SQL ステートメントを返す新しい関数 fn_get_sql

(SP3 からの機能)

SP3 以降には、指定した SQL ハンドルに SQL ステートメントのテキストを返す新しい関数 fn_get_sql が含まれています。さらに、この関数をサポートするために、sysprocesses システム テーブルに以下の表にあげた 3 つの列を追加しました。

列名データ型説明
sql_handlebinary(20)現在実行中のバッチまたはオブジェクトを表します。
stmt_startint指定した sql_handle の現在の SQL ステートメントの開始オフセット。
stmt_endint指定した sql_handle の現在の SQL ステートメントの終了オフセット。 値 -1 は、指定した sql_handle に対して fn_get_sql 関数が返す結果の最後まで現在のステートメントを実行することを示します。

構文

fn_get_sql (@SqlHandle = ] SqlHandle )

引数

@SqlHandle = ] SqlHandle

ハンドル値。SqlHandle は binary(20) 型です。

戻りテーブル

列名データ型説明
dbidsmallintデータベース ID。 アドホック SQL ステートメントの場合は、この値は NULL になります。
objectidIntデータベース オブジェクトの ID。アドホック SQL ステートメントの場合は、この値は NULL になります。
numbersmallintプロシージャがグループ化されている場合は、グループの数。エントリがプロシージャではない場合は、この値は 0 になります。 アドホック SQL ステートメントの場合は、この値は NULL になります。
encryptedBitオブジェクトが暗号化されているかどうかを示します。この値は、オブジェクトが暗号化されていない場合は 0 に、暗号化されている場合は 1 になります。
textTextSQL ステートメントのテキスト。暗号化されたオブジェクトの場合は、この値は NULL になります。

解説

sysprocesses システム テーブルの sql_handle 列から有効な SQL ハンドルを取得できます。

キャッシュに既に存在しないハンドルを渡すと、fn_get_sql は空の結果セットを返します。有効ではないハンドルを渡すと、バッチを停止し、以下のエラー メッセージを返します。

サーバー: メッセージ 569、レベル 16、状態 1、プロシージャ fn_get_sql、行 12 fn_get_sql に渡されたハンドルが無効でした。

SQL Server 2000 は、一括コピー ステートメントや 8 KB を超える文字列リテラルを持つステートメントなど、一部の Transact-SQL ステートメントをキャッシュできません。fn_get_sql 関数を使用してもこのようなステートメントのハンドルは取得できません。

結果セットの text 列は、パスワードを含む可能性のあるテキストについてはフィルタ処理されます。

fn_get_sql 関数が返す情報は、DBCC INPUTBUFFER コマンドに似ています。以下のように、DBCC INPUTBUFFER を使用できないときは、fn_get_sql 関数を使用します。

  • イベントが 255 文字を超えるとき。

  • ストアド プロシージャの現在最も高い入れ子レベルを返す必要があるとき。たとえば、sp_1 と sp_2 という名前の 2 つのストアド プロシージャがあるとします。sp_1 が sp_2 を呼び出していて、sp_2 が実行されている間に sysprocesses システム テーブルからハンドルを取得する場合、fn_get_sql 関数は sp_2 に関する情報を返します。さらに、fn_get_sql 関数は現在最も高い入れ子レベルのストアド プロシージャの完全なテキストを返します。

権限

sysadmin 固定サーバー ロールのメンバだけが fn_get_sql 関数を実行できます。

データベース管理者は、fn_get_sql 関数を使用して、問題のあるプロセスを診断するのに役立てることができます。管理者が問題のサーバー プロセス ID (SPID) を識別した後で、管理者は SPID に対する SQL ハンドルを取得し、そのハンドルを指定して fn_get_sql 関数を呼び出し、開始オフセットと終了オフセットを使用して問題の SPID の SQL テキストを特定できます。以下に例を示します。

DECLARE @Handle binary(20) 
SELECT @Handle = sql_handle FROM sysprocesses WHERE spid = 52 
SELECT * FROM ::fn_get_sql(@Handle)

ページのトップへ

5.1.11 複数データベースの組み合わせ所有権

(SP3 からの機能)

この Service Pack では、複数データベース組み合わせ所有権をオンまたはオフする新しいオプションを提供しています。

データベース コンポーネント SP3a をインストール中に、[旧バージョンとの互換性チェック リスト] ダイアログ ボックスに複数データベースの組み合わせ所有権を設定するためのオプションが表示されます。既定では、セットアップがすべてのユーザー データベースに対して複数データベースの組み合わせ所有権をオフにします。ここで、すべてのデータベースに対して複数データベースの組み合わせ所有権を有効にできます。詳細については、「[旧バージョンとの互換性チェックリスト] ダイアログ ボックス」を参照してください。

Desktop Engine SP3a をインストールしているときは、すべてのデータベースに対して複数データベースの組み合わせ所有権を有効にするために、ALLOWXDBCHAINING セットアップ パラメータを使用できます。詳細については、「3.7.3 MSDE 2000 セットアップ パラメータ」を参照してください。

注意 すべてのデータベースに対して複数データベースの組み合わせ所有権を有効にすることはお勧めしません。

インストール後に、以下の手法を使用して、インスタンスのすべてのデータベースに対して複数データベースの組み合わせ所有権をオンまたはオフにできます。

  • sp_configure システム ストアド プロシージャの新しい引数 Cross DB Ownership Chaining を使用します。

  • Enterprise Manager の [SQL Server のプロパティ] ダイアログ ボックスの [セキュリティ] タブで、[複数データベースの組み合わせ所有権の許可] オプションを使用します。

  • SQLServer.Configuration.ConfigValues Database Management Objects (DMO) コレクションを使用します。SQLServer オブジェクトが SQL Server 2000 SP3 以降のインスタンスを参照するときは、このコレクションは Cross DB Ownership Chaining という名前の ConfigValue オブジェクトを保持します。

そのインスタンスで複数データベースの組み合わせ所有権がオフになっている場合は、個別のデータベースに対してこのオプションを設定できます。以下の手法を使用して、あるデータベースに対して複数データベースの組み合わせ所有権をオンおよびオフにします。

  • sp_dboption システム ストアド プロシージャの新しいオプション db chaining を使用します。

  • Enterprise Manager の [データベースのプロパティ] ダイアログ ボックスの [セキュリティ] タブで、[複数データベースの組み合わせ所有権の許可] オプションを使用します。

  • DBOption2 DM O オブジェクトの DBChaining プロパティを使用します。

注意 プレリリース版の SP3 (ビルド 8.00.[BUILD_NUMBER] 以前) で以前に複数データベースの組み合わせ所有権を有効にしている場合でも、SP3a をインストールするときに、再度これを有効にする必要があります。

詳細については、セットアップ実行時に [旧バージョンとの互換性チェックリスト] ページで [ヘルプ] ボタンをクリックするか、SQL Server 2000 Books Online の更新されたエディションをダウンロードするか、Knowledge Base の記事  810474 を参照してください。

ページのトップへ

5.1.12 トレース フラグ 1204 の機能強化

(SP3 からの機能)

トレース フラグ 1204 は、デッドロックに陥っているロックの種類と、影響する現在のコマンドを返します。SP3 以降ではこのトレース フラグがオンになっていると、デッドロック情報が自動的にエラー ログに記録されます。

ページのトップへ

5.1.13 sp_changedbowner の権限の変更

(SP3 からの機能)

sysadmin 固定サーバー ロールのメンバだけが sp_changedbowner システム ストアド プロシージャを実行できます。

ページのトップへ

5.1.14 デバッグ機能の変更

(SP3 からの機能)

Microsoft Visual Studio® 6.0 以前または SP3 以前の SQL Server クエリ アナライザでのストアド プロシージャのデバッグ機能は、既定でオフになります。(クライアント アプリケーションのデバッグ中に SQL Server Transact-SQL にブレークポイントを指定して停止する) アプリケーションのデバッグも既定でオフになります。デバッグ機能を有効にするには、パラメータ legacy_on を渡して、sp_sdidebug を実行します。デバッグ機能を無効にするには、このプロシージャに legacy_off を渡します。

注意 実稼動サーバーで sp_sdidebug ストアド プロシージャを実行することはお勧めしません。

詳細については、Microsoft Knowledge Base の記事  328151 を参照してください。この記事には、 Microsoft Product Support Services Knowledge Base からアクセスできます。

ページのトップへ

5.1.15 UDP ポート 1434 での操作

(SP3a からの機能)

SQL Server 2000 SP3a からは、ネットワーク通信をサポートするように構成されていない SQL Server 2000 データベース エンジンおよび MSDE 2000 のインスタンスは、User Datagram Protocol (UDP) ポート 1434 の使用を停止します。ネットワーク通信をサポートするように構成されているインスタンスは UDP 1434 を使用します。

SP3a にアップグレードされたインスタンスは、そのインスタンスの共有メモリ Net-Library を除くすべてのサーバー Net-Library が無効になると、必ず UDP 1434 の使用を停止します。任意のサーバー Net-Library を有効にすると、そのインスタンスはポート 1434 の使用を開始します。サーバー Net-Library を有効または無効にすることに関する詳細については、SQL Server 2000 Books Online の「SQL Server ネットワーク ユーティリティ」を参照してください。

コンピュータによる UDP ポート 1434 の使用は、そのコンピュータ上の SQL Server 2000 および MSDE 2000 のすべてのインスタンスが SP3a にアップグレードされ、ネットワーク通信をサポートしないように構成されるまで、停止されません。

UDP ポートが開かれるか閉じられるかは、共有メモリ Net-Library の状態には依存しません。共有メモリ Net-Library はローカル接続にのみ使用され、ネットワークを使用しません。共有メモリ Net-Library は常にアクティブで、有効または無効にできません。

MSDE 2000 のインスタンスをインストールまたはアップグレードするときに、サーバー Net-Library を無効にすることを指定できます。MSDE 2000 Setup ユーティリティの DISABLENETWORKPROTOCOLS パラメータまたは MSDE 2000 マージ モジュールの SqlDisableNetworkProtocols プロパティのいずれかを使用します。これらのオプションの詳細については、「3.7.3 MSDE 2000 セットアップ パラメータ」を参照してください。

SQL Server 2000 データベース エンジンのインスタンスをインストールまたはアップグレードするときに、すべてのサーバー Net-Library を無効にすることはできません。

ページのトップへ

5.2 Analysis Services の機能強化

ここでは SP3a に含まれる SQL Server 2000 Analysis Services の機能強化について説明します。

ページのトップへ

5.2.1 リモート パーティション

(SP1 からの機能)

SP1 以降のバージョンがインストールされたローカル サーバーにリモート パーティションが作成されているときは、リモート サーバーはローカル サーバー上の親キューブにフルアクセス権を持つドメイン ユーザー アカウントを使用する必要があります。ローカル サーバー上の OLAP Administrators グループのメンバであるすべてのユーザー アカウントが、フルアクセス権を持っています。

さらに、ローカル サーバーに SP1 以降のバージョンがインストールされている場合は、ローカル サーバーがリモート パーティションを作成または管理できるように、リモート サーバーにも SP1 以降のバージョンがインストールされている必要があります。

ページのトップへ

5.2.2 更新された Analysis Services 再配布可能クライアント セットアップ

(SP1 からの機能)

Analysis Services SP1 以降のバージョンには、以下の再配布可能セットアップ プログラムの更新版が含まれています。

  • PTSLite.exe

  • PTSFull.exe

これらのファイルは、Service Pack インストール ディレクトリの \Msolap\Install\PTS パスにあります。

注意 PTSFull.exe は MDAC を含んでいますが、PTSLite.exe は含んでいません。

Analysis Services と Microsoft Office XP を使用している場合に発生するクライアント セットアップの問題点を回避または解決するには、アプリケーションでこれらの更新されたクライアント セットアップ プログラムを使用します。

注意 Analysis Services を Office XP と共に使用するときは、クライアントをアップグレードすることを強くお勧めします。

ページのトップへ

5.2.3 サード パーティのデータ マイニング アルゴリズム プロバイダを有効にするサポート

(SP1 からの機能)

Analysis Services SP1 以降のバージョンには、サード パーティのデータ マイニング アルゴリズム プロバイダを追加するためのサポートが含まれています。

ページのトップへ

5.2.4 更新されたクライアント ファイルを持つコンピュータへの Analysis Services のインストール

(SP1 からの機能)

SQL Server 2000 SP1 または Office XP など、更新されたクライアント ファイルを持つコンピュータに SQL Server 2000 Analysis Services をインストールする場合は、クライアントが正しく機能すること、およびキューブを参照できることを保証するために Analysis Services SP1 以降を適用する必要があります。

ページのトップへ

5.2.5 仮想キューブが参照する OLAP キューブの制限数の増加

(SP3 からの機能)

仮想キューブは 255 個までのキューブを参照できるようになりました。ただし、64 個を超えるキューブを参照する仮想キューブは、SP3 以前にリリースされたすべてのバージョンの Microsoft PivotTable® サービスには表示されません。

ページのトップへ

5.2.6 新しい DESCRIPTION キーワード

(SP3 からの機能)

ローカル キューブは、メジャーとディメンションに対して組み込みメンバ プロパティ DESCRIPTION をサポートするようになりました。CREATE CUBE マルチディメンション式 (MDX) ステートメントに追加された DESCRIPTION キーワードを使って、DESCRIPTION 組み込みメンバ プロパティの使用をサポートします。以下の BNF 句は、CREATE CUBE ステートメントに行われた変更を説明しています。

<dimensions def> ::= DIMENSION <dimension name> [<time def>]  
  [DIMENSION_STRUCTURE <sub_type>] [<hidden def>]  
  [DESCRIPTION <description expression>]  
  <options def> <comma> <hierarchy def list>  
<measures def> ::= MEASURE <measure name> <measure function def>  
  [<measure format def>] [<measure type def>] [<hidden def>]  
  [DESCRIPTION <description expression>] [<comma> <measures def>]

ページのトップへ

5.2.7 PivotTable サービスの新しい Restricted Client プロパティ

(SP3 からの機能)

SP3 は、新しい PivotTable サービス接続文字列プロパティ Restricted Client を導入しました。このプロパティを使用して、 PivotTable サービスがローカル キューブ機能を使用しないように制限できます。CREATE CUBE ステートメント、CREATE GLOBAL CUBE ステートメント CREATE SESSION CUBE ステートメントなど、ローカル キューブの作成または使用に関連するステートメントの使用を試みると、エラーが発生します。さらに、一連の入れ子になった DRILLDOWN ステートメントなど、階層の深い再帰に関連するステートメントは、PivotTable サービスが管理するステートメント スタックがオーバーフローする可能性がある場合にエラーを発生します。

このプロパティは文字列値を格納します。この値が "Y"、"y"、"T"、または "t" で始まる文字列値の場合、あるいは 0 以外の数値に変換できる文字列値の場合、PivotTable サービスは上記の制限を受けます。この値が上記以外の空文字列 ("") を含む任意の文字列値の場合、または数値 0 に変換できる任意の文字列値の場合、PivotTable サービスは制限を受けません。このプロパティの既定値は "0" です。

注意 このプロパティは、ローカル データ マイニング モデルの使用は制限しません。

ページのトップへ

5.2.8 Safety Options プロパティの変更

(SP3 からの機能)

Safety Options プロパティを DBPROP_MSMD_SAFETY_OPTIONS_ALLOW_SAFE に設定することにより、ローカル キューブでの PASSTHROUGH キーワードの使用を防ぎます。

ページのトップへ

5.2.9 既定で無効になっている Meta Data Services へのリポジトリの移行

(SP3 からの機能)

SP3 以降では、リポジトリ移動ウィザードで Meta Data Services リポジトリ形式を使用するオプションが無効になりました。 そのため、この形式を使用することはお勧めしません。ただし、ビジネス上の理由でこの形式が必要な場合、EnableMigrationToMetaDataServicesFormat レジストリ キーを使ってこのオプションを有効にできます。

既定では、このレジストリ キーは存在しません。 このキーを手作業で HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server\Server Connection Info に作成し、Meta Data Services 形式へのリポジトリの移行を有効に設定する必要があります。このレジストリ キーは大文字小文字を区別する文字列値を格納します。値が 1 または True に設定されている場合は、Meta Data Services 形式へのリポジトリの移行が有効になります。値がその他の任意の文字列に設定されている場合、またはレジストリ キーが存在しない場合は、Meta Data Services 形式へのリポジトリの移動は無効になります。

注意 このレジストリ キーの値を変更すると、その変更はすぐに反映されます。

ページのトップへ

5.2.10 リモート Data フォルダの権限の変更が必要

(SP3 からの機能)

Analysis Services Data フォルダが、分析サーバーを実行しているコンピュータとは別のコンピュータに存在する場合は、SP3a Setup を実行後にそのフォルダの権限を変更する必要があります。分析サーバーを実行しているコンピュータの OLAP Administrators グループのすべてのメンバにフル コントロール アクセスを許可するように、リモート コンピュータ上のそのフォルダに権限を設定します。時間の経過と共に OLAP Administrators グループにメンバを追加したり、削除するときは、その時点の OLAP Administrators グループを正確に反映するように、リモート Data フォルダの権限を変更してください。その結果、バックアップや復元が正しく機能するようになります。

さらに、SP3a Setup 実行後に、分析サーバーを実行しているアカウントにリモート Data フォルダへのフル コントロール アクセスを許可する必要があります。

クラスタ構成で実行している Analysis Services のインスタンスに SP3a を適用する場合は、ドメイン レベルの OLAP Administrators グループにリモート Data フォルダへのフル コントロール アクセスを許可する必要があります。ドメイン レベルの OLAP Administrators グループの作成と使用の詳細については、 Microsoft Product Support Services Knowledge Base で記事  308023 を参照してください。

ページのトップへ

5.3 レプリケーションの機能強化

ここでは SP3a に含まれる SQL Server 2000 レプリケーションの機能強化について説明します。

ページのトップへ

5.3.1 トランザクション レプリケーション UPDATE カスタム ストアド プロシージャ

(SP1 からの機能)

トランザクション レプリケーションのセットアップ中に、操作を挿入、削除、および更新するカスタム ストアド プロシージャがサブスクリプション データベースに作成されます。1 つの UPDATE ステートメントで影響する列数とは無関係に、update カスタム ストアド プロシージャはサブスクリプション テーブルのすべての列を更新します。変更されなかったすべての列は、単純に UPDATE を実行する前と同じ値に再設定されます。一般的には、この操作が問題になることはありません。ただし、これらの中のいずれかの列がインデックスを持つ場合、この再設定には時間がかかります。

トランザクション レプリケーションを使用していて、サブスクリプション テーブルにいくつかインデックスを持ち、更新により値が変更される列が少ない場合、サブスクライバで変更が適用されているときの、インデックスのメンテナンスのオーバーヘッドがパフォーマンスの制限要因になる可能性があります。たとえば、レポート処理の目的で使用されるサブスクリプション データベースは、パブリケーション データベースよりも多くのインデックスを持つ場合があります。実行時に UPDATE ステートメントを動的に構築すると、パフォーマンスが向上する可能性があります。更新処理には変更される列だけを含めるようにして、最適な UPDATE 文字列を作成します。

この Service Pack には、新しいストアド プロシージャ sp_scriptdynamicupdproc が含まれています。 このストアド プロシージャは、実行時に動的に UPDATE ステートメントを構築するためにサブスクライバで使用できるカスタム ストアド プロシージャを生成します。ただし、動的に UPDATE ステートメントを構築するための余分な処理が実行時に必要になります。

sp_scriptdynamicupdproc

動的更新ストアド プロシージャを作成する CREATE PROCEDURE ステートメントを生成します。変更する列を示す MCALL 構文に基づき、カスタム ストアド プロシージャ内に UPDATE ステートメントが動的に構築されます。サブスクライブしているテーブルのインデックス数が増加し、変更される列数が少ない場合に、このストアド プロシージャを使用します。このストアド プロシージャは、パブリケーション データベースのパブリッシャで実行されます。

構文

sp_scriptdynamicupdproc [ @artid =] artid

引数

[@artid =] artid

アーティクル ID。 artid は int 型で既定値はありません。

結果セット

1 つの nvarchar(4000) 列で構成される結果セットを返します。結果セットは、カスタム ストアド プロシージャを作成するために使用する完成した CREATE PROCEDURE ステートメントを形成します。

解説

sp_scriptdynamicupdproc はトランザクション レプリケーションで使用されます。既定の MCALL スクリプティング ロジックは、UPDATE ステートメント内にすべての列を含み、変更される列を判断するためにビットマップを使用します。列が変更されない場合、その列は元の値が再度設定されます。 通常、この再設定で問題が生じることはありません。その列がインデックスを持っている場合は、余分な処理が発生します。対照的に、このストアド プロシージャは次のような動的な手法を使用します。動的な手法では変更される列だけを含めるようにして、最適な UPDATE 文字列を提供します。ただし、実行時に動的 UPDATE ステートメントを構築する余分な処理が発生します。動的なストアド プロシージャ手法と静的な既定の手法の両方をテストし、特定のニーズに見合う最適なソリューションを選択することをお勧めします。

権限

public ロールのメンバが sp_scriptdynamicupdproc を実行できます。

この例は pubs データベースの authors テーブルに (artid が 1 に設定された) アーティクルを作成し、UPDATE ステートメントが次のステートメントを実行するカスタム ストアド プロシージャであることを指定します。

'MCALL sp_mupd_authors'

以下のストアド プロシージャをパブリッシャで実行することにより、サブスクライバでディストリビューション エージェントが実行するカスタム ストアド プロシージャを生成します。

EXEC sp_scriptdynamicupdproc @artid = '1'

このステートメントは以下の結果を返します。

create procedure [sp_mupd_authors]  
@c1 varchar(11),@c2 varchar(40),@c3 varchar(20),@c4 char(12), 
@c5 varchar(40),@c6 varchar(20),@c7 char(2),@c8 char(5), 
@c9 bit,@pkc1 varchar(11),@bitmap binary(2) 
As 
declare @stmt nvarchar(4000), @spacer nvarchar(1) 
select @spacer =N'' 
select @stmt = N'update [authors] set '  
if substring(@bitmap,1,1) & 2 = 2 
begin 
select @stmt = @stmt + @spacer + N'[au_lname]' + N'=@2' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 4 = 4 
begin 
select @stmt = @stmt + @spacer + N'[au_fname]' + N'=@3' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 8 = 8 
begin 
select @stmt = @stmt + @spacer + N'[phone]' + N'=@4' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 16 = 16 
begin 
select @stmt = @stmt + @spacer + N'[address]' + N'=@5' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 32 = 32 
begin 
select @stmt = @stmt + @spacer + N'[city]' + N'=@6' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 64 = 64 
begin 
select @stmt = @stmt + @spacer + N'[state]' + N'=@7' 
select @spacer = N',' 
end 
if substring(@bitmap,1,1) & 128 = 128 
begin 
select @stmt = @stmt + @spacer + N'[zip]' + N'=@8' 
select @spacer = N',' 
end 
if substring(@bitmap,2,1) & 1 = 1 
begin 
select @stmt = @stmt + @spacer + N'[contract]' + N'=@9' 
select @spacer = N',' 
end 
select @stmt = @stmt + N' where [au_id] = @1' 
exec sp_executesql @stmt, N' @1 varchar(11),@2 varchar(40),@3 varchar(20), 
@4 char(12),@5 varchar(40),@6 varchar(20),@7 char(2),@8 char(5),@9 bit', 
@pkc1,@c2,@c3,@c4,@c5,@c6,@c7,@c8,@c9 
if @@rowcount = 0 
   if @@microsoftversion>0x07320000 
      exec sp_MSreplraiserror 20598

このストアド プロシージャを実行後に、結果として生成されたスクリプトを使用して、サブスクライバでストアド プロシージャを手作業で作成できます。

ページのトップへ

5.3.2 一意列でのトランザクション レプリケーション UPDATE ステートメント

(SP1 からの機能)

トランザクション レプリケーションでは、通常 UPDATE ステートメントは更新としてレプリケートされます。しかし、更新が一意インデックス、クラスタ化インデックス、または一意制約として使用される式の一部である列を変更すると、サブスクライバでは DELETE ステートメントを実行し、その後 INSERT ステートメントを実行することにより更新が行われます。この種の更新は複数の行に影響し、更新が行から行へ引き継がれていくときに一意性に違反する可能性が生じるため、このような方法がとられます。

ただし、更新が 1 行にしか影響しない場合、一意性に違反する可能性はありません。そのため、1 行だけに影響する一意列への更新を UPDATE ステートメントとしてレプリケートできるように、この Service Pack にはトレース フラグ 8207 が追加されました。この最適化は、サブスクライバにユーザー定義 UPDATE トリガを組み込み、一意列で 1 行だけに影響する更新のためにこれらのトリガを必要とするアプリケーション向けに特別に追加されました。

トレース フラグ 8207 を使用するには、ログ リーダー エージェントを開始する前にコマンド プロンプトからオンする (sqlservr.exe -T8207) か、実行時に DBCC TRACEON(8207, -1) を使用します。

重要 通常、トレース フラグ 8207 は読み取り専用トランザクション レプリケーションで使用されます。サブスクライバで主キー UPDATE が発生する可能性のある場合に、更新可能なサブスクリプションではこのトレース フラグを使用しないでください。

ページのトップへ

5.3.3 同時実行スナップショット処理から削除された制限事項

(SP1 からの機能)

SQL Server 2000 では、パブリッシュされているテーブルが主キーまたはクラスタ化キーではない一意キーを持っている場合は、同時実行スナップショット処理は推奨されませんでした。同時実行スナップショットが生成されているときに、クラスタ化キーに対するデータ修正が行われると、同時実行スナップショットがサブスクライバに適用されるときに、レプリケーションは重複キー エラーで失敗する可能性がありました。この Service Pack では同時実行スナップショット処理の使用に関する制限事項がすべてなくなりました。

ページのトップへ

5.3.4 トランザクション レプリケーションのスクリプティング カスタム ストアド プロシージャ

(SP1 からの機能)

非同期サブスクリプション (つまり、初期スナップショットを受け取らないサブスクリプション) をセットアップしているときは、INSERT、UPDATE、および DELETE ステートメントに対するカスタム ストアド プロシージャを手作業で作成する必要がありました。通常は、初期スナップショットが配布されるとき、サブスクライバでこれらのステートメントが作成されます。パブリケーション レベルのカスタム ストアド プロシージャ用にスクリプトを生成するために、新しいストアド プロシージャ sp_scriptpublicationcustomprocs が追加されました。この新しい機能により、非同期サブスクリプションのセットアップが容易になりました。

sp_scriptpublicationcustomprocs

パブリケーションで、カスタム プロシージャ スキーマを自動生成するオプションが有効な場合、このストアド プロシージャがすべてのテーブル アーティクルに対して、カスタム INSERT、UPDATE、および DELETE プロシージャのスクリプトを作成します。 sp_scriptpublicationcustomprocs はスナップショットが手動で適用されるサブスクリプションをセットアップするために特に有益です。

構文

sp_scriptpublicationcustomprocs [@publication]publication_name

引数

[@publication] = publication_name

パブリケーションの名前。 既定では、publication_name は sysname です。

戻り値

0 (成功) または 1 (失敗)

結果セット

1 つの nvarchar(4000) 列で構成される結果セットを返します。結果セットは、カスタム ストアド プロシージャを作成するために必要な完成した CREATE PROCEDURE ステートメントを形成します。

解説

カスタム プロシージャの自動生成 (0x2) スキーマ オプションが指定されていないアーティクルに対しては、カスタム プロシージャのスクリプトは作成されません。

権限

Execute 権限は public に許可されます。 現在のデータベースの sysadmin 固定サーバー ロールおよび db_owner 固定データベース ロールのメンバにアクセスを制限するために、プロシージャのセキュリティ チェックはこのストアド プロシージャの内部で実行されます。

この例は、Northwind という名前のパブリケーションにカスタム ストアド プロシージャのスクリプトを生成します。

exec Northwind.dbo.sp_scriptpublicationcustomprocs  
@publication = N'Northwind'

ページのトップへ

5.3.5 マージ レプリケーションの保有期間を基準にしたメタ データのクリーンアップ

(SP1 からの機能)

マージ レプリケーションのシステム テーブルにメタ データが大量に存在するときは、メタ データをクリーン アップするとパフォーマンスが向上します。SQL Server 2000 SP1 以前は、メタ データは sp_mergecleanupmetadata を実行することによってのみクリーン アップできました。しかし、 SQL Server 2000 SP1 以降では保有期間を基準にしたメタ データのクリーンアップが含まれています。 その結果、以下のシステム テーブルからメタ データを自動的に削除できるようになりました。

  • MSmerge_contents

  • MSmerge_tombstone

  • MSmerge_genhistory

  • 存在する場合は、任意の変更前イメージ テーブル

注意 パブリケーションで @keep_partition_changes 同期最適化オプションが有効である場合に変更前イメージ テーブルが存在します。

保有期間を基準にしたメタ データ クリーンアップは以下の場合に発生します。

  • –MetadataRetentionCleanup マージ エージェント パラメータが 1 に設定されている (既定の設定) 場合、マージ エージェントがマージに関係しているサブスクライバとパブリッシャをクリーン アップします。

  • -MetadataRetentionCleanup パラメータが 0 に設定されると、自動クリーンアップは行われません。この場合、sp_mergemetadataretentioncleanup を実行して、保有期間を基準にしたメタ データのクリーンアップを手動で起動します。このストアド プロシージャは、クリーンアップが必要なすべてのパブリッシャとサブスクライバで実行する必要があります。パブリッシャとサブスクライバを同じ時点でクリーンアップすることをお勧めしますが、必須ではありません (このセクション後半の「間違った競合の回避」を参照してください)。

  • 注意 この SQL Server 2000 SP1 以降に配布されるすべてのマージ エージェント プロファイルでは、-MetadataRetentionCleanup パラメータが 1 に設定されるようになりました。サーバーを SP1 以降にアップグレードし、その後マージ レプリケーションを追加すると、[マージ エージェントのプロファイル] がこのパラメータを含むように自動的に更新されます。既にマージ レプリケーションが有効になっているサーバーを SP1 以降にアップグレードすると、[マージ エージェントのプロファイル] は自動的に更新されません。 sp_add_agent_parameter を実行することによりこのプロファイルを更新します (このセクションの後半の「sp_add_agent_parameter の追加パラメータ」を参照してください)。

    重要 パブリケーションの既定の保有期間は 14 日間です。1 つのアーティクルがいくつかのパブリケーションに所属する場合は、異なる保有期間を複数持つことがあります。このような場合は、もっとも早くクリーンアップできる時期を判断するために、もっとも長い保有期間を使用します。データベースに複数のパブリケーションが存在し、これらのパブリケーションのどれか 1 つのパブリケーションの保有期間が無期限に設定されている (@retention=0) と、データベースのマージ メタ データは自動的にクリーンアップされません。このため、保有時間が無期限に設定されたパブリケーションの使用には注意が必要です。

sp_add_agent_parameter の追加パラメータ

システム プロシージャ sp_add_agent_parameter が MetadataRetentionCleanup パラメータを持つようになりました。 このパラメータを使用して、[マージ エージェントのプロファイル] にメタ データ保有期間クリーンアップを追加または削除できます。値 1 はプロファイルがクリーンアップを含むことを示し、値 0 はプロファイルがクリーンアップを含まないことを示します。たとえば、メタ データ保有期間クリーンアップをプロファイルに追加するには、次のステートメントを実行します。

EXEC sp_add_agent_parameter @profile_id=<my_profile_id>, 
@parameter_name='MetadataRetentionCleanup', @parameter_value=1

異なるバージョンの SQL Server でのトポロジ内のメタ データ クリーンアップマージ レプリケーションに関係しているデータベースで、保有期間を基準にした自動クリーンアップが行われるためには、そのデータベースとマージ エージェントの両方が SQL Server 2000 SP1 以降を実行しているサーバー上に存在する必要があります。以下に例を示します。

  • SQL Server 7.0 プル サブスクライバは、SQL Server 2000 SP1 パブリッシャでクリーンアップを実行しません。

  • SQL Server 2000 SP1 プッシュ マージ エージェントは SQL Server 2000 (SP1 以前) サブスクライバ データベースでクリーンアップを実行しません。

  • SQL Server 2000 SP1 プッシュ マージ エージェントは、SQL Server 2000 以前を実行しているサブスクライバを持っている場合でも、SQL Server 2000 SP1 パブリッシャ データベースでクリーンアップを実行します。

一部のサーバーで自動クリーンアップが行われ、その他のサーバーで自動クリーンアップが行われなかった場合、間違った競合の原因になることがありますが、これはめったに起こりません。SQL Server 2000 SP1 以前のバージョンの SQL Server を含むトポロジでは、自動クリーンアップされないすべてのサーバーで sp_mergemetadatacleanup を実行すると、パフォーマンスが向上することがあります。

間違った競合の回避

保有期間を基準にしたメタ データのクリーンアップは、ほかのノードでの変更を同時性のない、無許可の上書きを防止します。ただし、以下の両方の条件を満たす場合に間違った競合が発生する可能性があります。

  • あるノードでメタ データのクリーンアップが行われ、別のノードではクリーンアップが行われなかった場合。

  • クリーンアップされたノードで、クリーンアップに続いて削除されたメタ データを持つ行に対する更新が行われる場合。

たとえば、メタ データがパブリッシャでクリーンアップされ、サブスクライバでクリーンアップされていないときに、パブリッシャで更新が行われると、データが同期されているにもかかわらず、競合が発生します。

この競合を回避するには、関連するノードでほぼ同時にメタ データがクリーンアップされるようにします。-MetadataRetentionCleanup を 1 に設定すると、マージが開始される前に、パブリッシャとサブスクライバの両方で自動的にクリーンアップが行われます。 その結果、すべてのノードで同時にクリーンアップが行われることになります。競合が発生する場合、マージ レプリケーション競合回避モジュールを使用して、競合を調べ、必要に応じて結果を変更します。

アーティクルが複数のパブリケーションに所属している場合、または再パブリッシュする状況にある場合、指定した行の保有期間がパブリッシャとサブスクライバで異なる可能性があります。一方のメタ データがクリーンアップされる機会を少なくし、もう一方の機会を少なくしないようにするには、これらの異なるパブリケーションの保有期間を同じ保有期間に設定することをお勧めします。

注意 システム テーブルにクリーンアップする必要のあるメタ データが大量に存在する場合は、マージ プロセスの実行に時間がかかります。定期的にメタ データをクリーンアップすることにより、この問題を防ぐことができます。

ページのトップへ

5.3.6 マージ レプリケーションのバックアップと復元の問題点

(SP1 からの機能)

バックアップから復元されるパブリケーション データベースは、動作が正しく一貫性を保つことを保証するために、まずグローバルなサブスクリプション (つまり、優先度値が割り当てられたサブスクリプション) を持つサブスクリプション データベースと同期する必要があります。同期操作は、パブリケーション データベースで復元操作により失われた変更が正確に再適用されることを保証します。

パブリケーション データベースを、匿名サブスクリプションを持つサブスクリプション データベースと同期しないでください。匿名サブスクリプションは、パブリケーション データベースに変更を適用するのに十分なメタ データを持っていないので、このような同期操作はデータの不一致を生じる可能性があります。

マージ レプリケーションに対してバックアップおよび復元を予定しているときは、以下の点も考慮してください。

  • 保有期間を過ぎていないバックアップからサブスクリプション データベースを復元する。

    サブスクライバがサブスクライブしているすべてのパブリケーションのうち、保有期間がもっとも短いものよりもバックアップが古くない場合のみ、バックアップからサブスクリプション データベースを復元します。たとえば、サブスクライバが保有期間がそれぞれ 10 日、20 日、30 日の 3 つのパブリケーションをサブスクライブしている場合、データベースの復元に使用するバックアップは、10 日以内のものである必要があります。

  • バックアップを作成する前に同期をとる。

    バックアップを実行する前に、サブスクライバとパブリッシャを同期することを強くお勧めします。同期をとらないと、サブスクライバをこのバックアップから復元する場合に、システムが正しく一貫性を保たない可能性があります。バックアップ ファイル自体が非常に新しくても、パブリッシャとの最後の同期が保有期間よりも古い可能性もあります。たとえば、パブリケーションが保有期間として 10 日を持つとします。最後の同期が 8 日前に行われ、きょうバックアップを実行しました。バックアップを 4 日後に適用すると、最後の同期は 12 日前に行われたことになります。 これは保有期間を過ぎています。バックアップ前にサブスクライバが正しく同期されていた場合は、サブスクリプション データベースは保有期間内に収まります。

  • パブリケーションの保有期間値を変更する場合はサブスクライバを再初期化する。

    パブリケーションの保有期間値を変更する必要がある場合は、データの一貫性を損なうことを防ぐために、サブスクライバを手動で再初期化します。保有期間を基にしたメタ データ クリーンアップ機能は、パブリケーションの保有期間に達したとき、マージ システム テーブルから保有期間の過ぎたメタ データを削除します。

    パブリケーションの保有期間値は、保有期間内に同期されていないサブスクリプションの有効期限がいつ切れるのかを判断するために使用されています。クリーンアップ後に、パブリケーションの保有期間を増加し、サブスクリプションをパブリッシャにマージしようとすると (メタ データは既に削除されています)、保有期間値が増加されているのでサブスクリプションの有効期限は切れていません。その上、パブリッシャはサブスクライバに変更をダウンロードするための メタ データを十分に持っていないので、一貫性を欠くことになります。

  • すべてのパブリッシャおよびその同期パートナーに対して同じパブリケーション保有期間値を使用します。異なる値を使用すると、一貫性を欠く可能性があります。

ページのトップへ

5.3.7 別のバージョンの SQL Server からレプリケートされたデータベースの復元

(SP1 からの機能)

同じサーバーとデータベース (バックアップを作成したサーバーと同じバージョンを実行している) にバックアップを復元すると、レプリケーションの設定は保持されます。データベースをバックアップするときに使用していたバージョンとは異なるバージョンの SQL Server にレプリケートされたデータベースを復元する場合は、以下の問題点に注意してください。

SQL Server 2000 で作成したバックアップから SQL Server 2000 SP3a に復元し、レプリケーションの設定を保持したい場合は、sp_vupgrade_replication を実行する必要があります。sp_vupgrade_replication を実行することにより、レプリケーション メタ データが現在のバージョンにアップグレードされることを保証します。sp_vupgrade_replication の実行しなかった場合は、復元されたデータベースはレプリケーション メタ データに関しては予測できない状態になります。

SQL Server 7.0 (製品版、SP1、SP2、SP3、および SP4) で作成したバックアップを SQL Server 2000 に復元し、レプリケーションの設定を保持したい場合は、Service Pack をインストールする前にバックアップを再度作成する必要があります。SQL Server 7.0 で作成したレプリケートされたデータベースのバックアップから直接 SQL Server 2000 SP3a に復元することはできますが、レプリケーションの設定は保持されません。

ページのトップへ

5.3.8 ログ リーダー エージェントの新しい -MaxCmdsInTran パラメータ

(SP1 からの機能)

SP1 からは、ログ リーダー エージェント用に新しいコマンド プロンプト パラメータ -MaxCmdsInTran が追加されました。大量のコマンドに影響するトランザクション (一般的には、大量更新や削除) では、サブスクライバへのトランザクションの反映を開始する前に、ディストリビューション エージェントがトランザクション全体をディストリビューション データベースに書き込むために、ログ リーダー エージェントを待機します。この遅延はディストリビューション エージェントをブロックし、2 つのエージェントの並列性を減少します。

-MaxCmdsInTran を使用することにより、ログ リーダー エージェントは大きなトランザクションを小さなチャンクに分割し、各チャンクが -MaxCmdsInTran の入力と同量か、それよりも少ないコマンドを含むようにします。その結果、ログ リーダー エージェントが後半のチャンクを処理しているときに、ディストリビューション エージェントは同じトランザクションの前半のチャンクの処理を開始できます。

ログ リーダー エージェントとディストリビューション エージェントの並列性が向上することにより、レプリケーション スループット全体が向上します。ただし、トランザクション チャンクはサブスクライバで個別のトランザクションとしてコミットされるので、ACID プロパティの原子性を妨げることに注意してください。このことは、大部分の環境では問題になりませんが、これをテストすることをお勧めします。

-MaxCmdsInTran パラメータの定義

-MaxCmdsInTran パラメータ値には正の整数 (1 以上) を指定します。値 0 を指定することは、パラメータを使用しないのと同じです。このパラメータはトランザクションが非常に大きいときのみパフォーマンスを向上するので、一般的にはこのパラメータには 5000 を超える値を指定します。以下に例を示します。

logread.exe -MaxCmdsInTran 10000.

このパラメータを使用するには、パブリッシャで SQL Server 2000 SP 1 以降が実行されていて、ログ リーダー エージェントとディストリビューション データベースが SP3 以降にアップグレードされている必要があります。それ以外の場合には、-MaxCmdsInTran は無視されます。

ページのトップへ

5.3.9 一意ではないクラスタ化インデックスの制限

(SP2 からの機能。 トランザクション レプリケーションのみに適用されます。)

テーブルがトランザクション レプリケーション用にパブリッシュされた後は、テーブルに一意ではないクラスタ化インデックスを作成できません。インデックスを作成する前に、まずそのテーブルを含むすべてのパブリケーションを削除する必要があります。

ページのトップへ

5.3.10 スナップショット エージェントの新しい -MaxNetworkOptimization コマンド ライン引数

(SP2 からの機能)

マージ レプリケーションの通常の処理中に、サブスクライバのパーティションに所属しない行に対して、サブスクライバに DELETE コマンドを送信できます。この種の DELETE コマンドは関連性のない削除と呼ばれます。関連性のない削除によってデータの整合性や一貫性に影響することはありませんが、不必要なネットワーク トラフィックの原因になります。

関連性のない削除によるネットワーク トラフィックを削減するには、マージ レプリケーション パブリケーションで新しいスナップショット エージェント パラメータ -MaxNetworkOptimization を使用できます。このパラメータを 1 に設定すると、関連性のない削除の機会を最小にし、ネットワークの最適化を最大にします。

注意 マージ パブリケーションの同期最適化オプションが true (sp_addmergepublication の @keep_partition_changes パラメータ) に設定されている場合のみ、このパラメータを 1 に設定することが役に立ちます。

このパラメータを 1 に設定すると、複数レベルの結合フィルタや複雑なサブセット フィルタが存在する場合は、パブリッシャでメタ データのストレージが増加し、パフォーマンス低下の原因になる可能性があるので、既定値は 0 です。レプリケーション トポロジを注意深く評価し、関連性のない削除によるネットワーク トラフィックが受け入れられないほど高い場合にのみ、-MaxNetworkOptimization を 1 に設定します。

システム プロシージャ sp_add_agent_parameter を次のように実行することにより、[スナップショット エージェントのプロファイル] にこのパラメータを追加できます。EXEC sp_add_agent_parameter 1, 'MaxNetworkOptimization', 1

ページのトップへ

5.3.11 マージ レプリケーションが使用する新しいロール

(SP3 からの機能)

SP3 は、マージ レプリケーションで使用する新しいロールを自動的に作成します。新しいロールの名前の形式は MSmerge-<パブリケーション ID>> です。ロールはパブリッシャでマージ レプリケーション パブリケーションごとに作成され、パブリッシャでマージ パブリケーションへのアクセスを制御するパブリケーション アクセス リスト (PAL) として動作します。このロールが削除された場合、ロールを再作成するために SP3 以降に含まれる新しいストアド プロシージャ sp_createmergepalrole を実行できます。このストアド プロシージャは、ロールを再作成するためにパブリッシャのパブリケーション データベースで実行されます。

構文

sp_createmergepalrole [ @publication = ] 'publication'

引数

[@publication = ] 'publication'

パブリケーション名。 publication は sysname 型で既定値はありません。このパラメータを使って、マージ レプリケーションが使用するロールを再作成しているときに、使用するパブリケーションを選択します。

戻り値

0 (成功) または 1 (失敗)

解説

sp_createmergepalrole を実行することによって、新しいロールに対応する新しい行を sysusers テーブルに追加します。この新しいロールの名前は、sysmergepublications テーブル内で指定した publication の pubid 列の値に基づきます。ロール名のプレフィックスは 'MSMerge_' で、そのロール名に pubid が付加されます (ハイフンは付加されません)。

権限

sysadmin 固定サーバー ロールまたは db_owner 固定データベース ロールのメンバだけが、sp_createmergepalrole を実行できます。

ページのトップへ

5.3.12 sysadmin 以外のユーザーが作成したサブスクリプションの要件

(SP3 からの機能)

sysadmin 固定サーバー ロールのメンバではないユーザーがサブスクリプションを作成する場合は、 以下のいずれか 1 つのことを行う必要があります。

  • レプリケーション エージェントに関連付けられた SQL Server エージェント ジョブ ステップが十分な特権で実行されるように、ログインとパスワードと共に SQL Server エージェント プロキシ アカウントを設定します。詳細については、SQL Server Books Online の「xp_sqlagent_proxy_account」を参照してください。

  • エージェントを実行する前に、ジョブ ステップの所有者を sysadmin 固定サーバー ロールのメンバに変更します。

注意 リモート エージェントをアクティブにする機能は、常にジョブ ステップを sysadmin 固定サーバー ロール内のユーザー アカウントのコンテキストで実行することを必要とします。

ページのトップへ

5.3.13 ストアド プロシージャの権限の変更

(SP3 からの機能)

レプリケーション トポロジの実装、管理、および監視に使用する多くのストアド プロシージャの権限が変更されました。これらの変更の大部分は、ストアド プロシージャの実行に必要な権限を厳しくすることに関係しています。新しい権限の詳細については、更新されたバージョンの SQL Server Books Online のレプリケーション ストアド プロシージャに関する Transact-SQL リファレンス マニュアルを参照してください。更新された SQL Server Books Online の詳細については、「1.6 利用できる更新された Books Online ドキュメント」を参照してください。

ページのトップへ

5.3.14 sp_addmergearticle と sp_changemergearticle の新しいパラメータ

(SP3 からの機能)

sp_addmergearticle と sp_changemergearticle の両方に新しいパラメータ @published_in_tran_pub が追加されました。このパラメータを使用して、トランザクション パブリケーションでマージ パブリケーションのアーティクルもパブリッシュされることを示します。@published_in_tran_pub は nvarchar(5) 型で、既定値は FALSE です。TRUE を指定すると、トランザクション パブリケーションでアーティクルがパブリッシュされます。

注意 sp_changemergearticle でこのパラメータを変更すると、スナップショットを無効にし、サブスクライバを再初期化する必要があります。

ページのトップへ

5.3.15 パブリッシングとディストリビューションの設定ウィザードの新しいページ

(SP3 からの機能)

パブリッシングとディストリビューションの設定ウィザードに、新しい [ディストリビュータ パスワード] ページが含まれるようになりました。サーバーをリモート ディストリビュータとして使用するために 1 つ以上のパブリッシャを選択していて、これらのパブリッシャのうち 1 つ以上がパスワードを必要とする場合、このページでパスワードを入力する必要があります。パブリッシャとディストリビュータ間の接続は、リンク サーバーとリモート サーバーによるハイブリッド接続です。接続はログイン distributor_admin を使用します。既定では、パブリッシャはリモート ディストリビュータと信頼関係を結ばない形式で設定されるので、パスワードが必要になります。

注意 SQL Server 2000 Books Online (アップデート - SP3) をダウンロードしてインストールしている場合は、新しいページで [ヘルプ] ボタンをクリックするとこの情報を参照できます。

ページのトップへ

5.3.16 Windows 同期マネージャ サポートの変更

(SP3 からの機能)

SQL Server は、既存のサブスクリプション (SQL Server Enterprise Manager、SQL-DMO、およびレプリケーション ストアド プロシージャを使って作成されたサブスクリプション) を Windows 同期マネージャで使用できるようにします。また、Windows 同期マネージャを使って新しいサブスクリプションを作成することもできます。Service Pack 適用後にサブスクリプションの同期をとると、Windows 同期マネージャが同期に関係するサーバーに接続するために必要な 1 つまたは複数のパスワードを問い合わせます。

ページのトップへ

5.3.17 レプリケーション データベースのアタッチまたは復元の必要条件の変更

(SP3 からの機能)

特定の条件の組み合わせによって、パブリッシュされたデータベースのアタッチまたは復元のプロセスで、レプリケーションが機能しない場合があります。このような条件の組み合わせを以下に示します。

  • SP3 以降が適用されています。

  • データベースをアタッチしたユーザーが、sysadmin 固定サーバー ロールのメンバではありません。

  • 複数データベースの組み合わせ所有権が許可されていません。

これらの条件をすべて満たす場合は、アタッチまたは復元されるデータベースで sp_changedbowner ストアド プロシージャを実行する必要があります。所有権を sa 組み込み管理者ログインに割り当てます。これにより、レプリケーションが正しく機能することを保証します。

注意 sp_changedbowner ストアド プロシージャを実行するには、sysadmin 固定サーバー ロールのメンバである必要があります。

複数データベースの組み合わせ所有権の詳細については、「5.1.11 複数データベースの組み合わせ所有権」を参照してください。

ページのトップへ

5.4 SQL Server エージェントの機能強化

ここでは SP3a に含まれる SQL Server エージェントの機能強化について説明します。

ページのトップへ

5.4.1 SQL Server エージェント ログ アカウント情報

(SP2 からの機能)

SQL Server エージェント ジョブ ヒストリは、各ジョブ ステップを実行する Windows アカウントを記録するようになりました。レプリケーション タスクやデータ変換サービス (DTS) タスク用に定義された定期ジョブを含めて、定期ジョブでのセキュリティの問題を診断するのにこの情報が役に立ちます。

ページのトップへ

5.4.2 マスタ/対象サーバー構成の変更

(SP3 からの機能)

マルチサーバー管理は、SQL Server の複数のインスタンス間の自動管理作業のプロセスです。2 台以上のサーバーを管理し、保守作業を集中管理する場合にマルチサーバー管理を使用します。

SP3a では、SQL Server エージェント プロキシ アカウントを使用する必要がない場合は、SQL Server エージェント サービス アカウントが Windows 管理者である必要はありません。SQL Server エージェント プロキシ アカウントの詳細については、「5.7.3 SQL Server エージェントのプロキシ アカウントの強化」を参照してください。SQL Server エージェント サービス アカウントは、sysadmin 固定サーバー ロールのメンバである必要があります。

マルチサーバー管理では、少なくとも 1 台のマスタ サーバーと少なくとも 1 台の対象サーバーを持つ必要があります。マスタ サーバーは、ジョブを対象サーバーに配布し、対象サーバーからイベントを受け取ります。マスタ サーバーは、対象サーバーで実行するジョブのジョブ定義の中心となるコピーを格納します。対象サーバーはマスタ サーバーに定期的に接続し、実行するジョブのリストを更新します。マスタ サーバーに新しいジョブが存在する場合は、対象サーバーがそのジョブをダウンロードし、マスタ サーバーから切断します。対象サーバーはそのジョブを完了した後に、マスタ サーバーに再接続し、そのジョブの状態を報告します。

SP3a を適用する前に、SQL Server 2000 マスタ/対象サーバー構成をアップグレードするために必要ないくつかの手順を完了する必要があります。SP3a で行われる変更は SQL Server 7.0 対象サーバーとは互換性がありません。 また、SP3a を実行していないすべてのサーバーと互換性がありません。これは、元の SQL Server 2000 機能の変更です。

マスタ/対象サーバー構成をアップグレードする方法

1.マスタ サーバーで新しい MSX (マスタ サーバー) アカウントを作成します。これはアップグレードする TSX (対象サーバー) サーバー (または複数のサーバー) を準備するためです。これを行うには、以下のコマンドを実行します。

--オプション A:Windows 認証 
EXEC sp_grantlogin 'DOMAIN\user' 
GO 
USE msdb 
GO 
EXEC sp_adduser 'DOMAIN\user', 'DOMAIN\user', 'TargetServersRole' 
GO
--オプション B:SQL Server 認証 – 詳細については以下の説明を 
--参照してください。 
EXEC sp_addlogin <MSXAccount>, <MSXAccountPassword>, 'msdb' 
GO 
USE msdb 
GO 
EXEC sp_adduser <MSXAccount>, <MSXAccount>, 'TargetServersRole' 
GO

<MSXAccount> は選択した SQL ログイン名を表し、<MSXAccountPassword> は関連付けられたパスワードを表します。

注意 これらの値はシングル クォーテーション マークで囲む必要があります。

MSX アカウントを選択するときに、以下の選択肢があります。

  • Windows 認証。これはパスワードを格納する必要がないので、最も安全なオプションです。 ローカル Windows 管理者権限なしに、SQL Server と SQL Server エージェントを構成できます。

  • SQL Server 認証。SQL Server はユーザー名とパスワードをローカル セキュリティ機関 (LSA) シークレットとして格納するので、SQL Server 認証はローカル Windows 管理者権限を持つ SQL Server エージェント サービス アカウントが必要になります。 その結果、アクセスはローカル Windows 管理者に制限されます。すべての TSX サーバーに対して 1 つのアカウントを作成することも、TSX サーバーごとに 1 つのアカウントを作成することもできます。

  • SQL Server エージェント プローブ アカウント (<computer_name>_msx_probe_login) を指定しないでください。TSX サーバーがプローブ アカウントを使用しなくなったので、SQL Server は SP3 以降へのアップグレードの一部として古いプローブ アカウントを削除します。

2.TSX サーバーを一度に 1 台ずつ SP3a にアップグレードします。(Service Pack を適用する前に、アップグレードするタイミングの詳細について、手順 3 を参照してください。)

3.サーバーがダウンしている時間を最小限にとどめるために、SP3a へのアップグレード完了後すぐに各 TSX サーバーで拡張ストアド プロシージャ xp_sqlagent_msx_account を実行します。

注意 xp_sqlagent_msx_account 実行後に、各サーバーで SQL エージェントを停止し、再開する必要があります。

xp_sqlagent_msx_account の詳細については、「5.4.3 新しい SQL Server エージェント拡張ストアド プロシージャ」を参照してください。

4.マスタ サーバーに SP3a を適用します。TSX サーバーは _msx_probe を使用しなくなったので、SP3a Setup は古い _msx_probe アカウントを削除します。アカウントが SQL エージェント ジョブを所有している場合はそのアカウントは削除されないので、ジョブの所有者を別のユーザーに変更し、このようなアカウントを手作業で削除する必要があります。SQL エージェント ジョブを所有する古い _msx_probe アカウントを引き続き使用する場合は、_msx_probe アカウントのパスワードを変更する必要がある場合があります。

ページのトップへ

5.4.3 新しい SQL Server エージェント拡張ストアド プロシージャ

(SP3 からの機能)

SP3a には、SQL Server エージェント TSX サーバーが MSX サーバーから指示をダウンロードするために使用するアカウントを構成できる新しい拡張ストアド プロシージャが含まれています。このアカウントは、MSX アカウントまたはマスタ サーバー アカウントとも呼ばれています。

xp_sqlagent_msx_account

この拡張ストアド プロシージャは、TSX サーバー上の LSA シークレットに SQL Server エージェント MSX アカウントのユーザー名とパスワードを設定するか、TSX サーバー上の LSA シークレットから SQL Server エージェント MSX アカウントのユーザー名とパスワードを取得します。securityadmin 固定サーバー ロールのメンバだけが、この拡張ストアド プロシージャを実行できます。

この拡張ストアド プロシージャを実行するには、SQL Server エージェントが実行されている必要があります。さらに、指定したアカウントが SQL Server のログインの場合、ローカルの Windows 管理者権限が必要になります。SQL Server エージェントは、ユーザー名とパスワードを LSA シークレットとして格納するので、アクセスはローカルの Windows 管理者に制限されます。

構文

xp_sqlagent_msx_account
{N'GET' |
N'SET' | N'DEL', N'MSX_domain_name'N'MSX_username'N'MSX_password'
}

引数

N'GET'

現在の SQL Server エージェント MSX アカウントを取得します。N'GET' は nvarchar 型で、既定値はありません。セキュリティ上の理由から、パスワードはレポートされません。

N'SET'

SQL Server エージェント MSX アカウントとして使用するアカウントを設定します。MSX_username パラメータと MSX_password パラメータを使用して、SQL Server エージェント MSX アカウントとして使用するアカウントを指定します。N'SET'は nvarchar 型で、既定値はありません。

N'DEL'

SQL Server エージェント MSX アカウントを削除します。

'MSX_domain_name'

将来使用するために予約されています。

'MSX_username'

SQL Server エージェント MSX アカウントとして使用する Windows アカウントの名前。このパラメータと MSX_password パラメータに空文字列を指定すると、Windows セキュリティを選択したことになります。この場合、SQL Server エージェント サービス アカウントの資格情報を使用して MSX サーバーにログオンします。MSX_username は nvarchar 型で、既定値はありません。

'MSX_password'

MSX_username で指定した SQL Server アカウントのパスワード。このパラメータと MSX_username パラメータに空文字列を指定すると、Windows セキュリティを選択したことになります。この場合、SQL Server エージェント サービス アカウントの資格情報を使用して MSX サーバーにログオンします。MSX_password は nvarchar 型で、既定値はありません。

注意 xp_sqlagent_msx_account のパラメータは、この順序で指定する必要があります。名前付きパラメータは使用できません。

戻り値

成功した場合は 0 を、失敗した場合は 1 をそれぞれ返します。

xp_sqlagent_msx_account の実行が失敗し値 1 が返されると、SQL Server はエラーに関する情報を持つエラー メッセージを生成します。

結果セット

SQL Server エージェント MSX アカウントが設定されている場合に、N'GET' を指定すると、xp_sqlagent_msx_account は次の情報を含む結果セットを返します。

データ型説明
domainsysname適用なし。将来使用するために予約されています。
usernamesysnameSQL Server エージェント MSX アカウントとして使用するアカウント。

SQL Server エージェント MSX アカウントが設定されていない場合、または N'SET' を指定した場合、結果セットは返されません。

権限

xp_sqlagent_msx_account の実行権限は、特に指定しない限り securityadmin 固定サーバー ロールのメンバに与えられます。

A. 現在割り当てられている SQL Server エージェント MSX アカウントを取得する 
この例では、SQL Server エージェント MSX アカウントとして使用するために現在割り当てられているアカウントを取得します。

EXEC master.dbo.xp_sqlagent_msx_account N'GET'

B. Windows 認証を使用するように SQL Server エージェント MSX アカウントを設定する 
この例では、Windows 認証を使用するように SQL Server エージェント MSX アカウントを設定します。

EXEC master.dbo.xp_sqlagent_msx_account N'SET',  
   N'',  -- 将来使用するために予約されています 
   N'',  -- MSX_username 
   N''  -- MSX_password

SQL Server 認証を使用するように SQL Server エージェント MSX アカウントを設定する

この例では、SQL Server エージェント MSX アカウントを Ralph に設定し、パスワードを指定します。

EXEC master.dbo.xp_sqlagent_msx_account N'SET', 
   N'',  -- 将来使用するために予約されています 
   N'Ralph',  -- MSX_username 
   N'RalphPwd'  -- MSX_password

SQL Server エージェント MSX アカウントを削除する

この例では、SQL Server エージェント MSX アカウントを削除します。SQL Server エージェントの既定の設定は Windows 統合セキュリティ認証になります。

EXEC master.dbo.xp_sqlagent_msx_account N'DEL'

ページのトップへ

5.4.4 SQL Server エージェント権限の確認

(SP3 からの機能)

SQL Server は、エージェント ジョブの所有者が各ジョブから出力ログ ファイルに追加または上書きするための権限を持っているかどうか確認するようになりました。この確認は、以下の 3 つの方法で行います。

  • ジョブの所有者が sysadmin 固定サーバー ロールのメンバの場合、ジョブ出力ログ ファイルをサーバーに書き込むことができます。

  • ジョブの所有者が Windows ユーザーの場合、SQL Server はジョブ出力ログ ファイルを書き込み先としてサーバー上で選択した場所にそのユーザーが書き込み権限を持つかどうかを調べます。

  • ジョブの所有者が SQL Server ユーザーの場合、SQL Server はジョブ出力ログ ファイルを書き込み先としてサーバー上で選択した場所に SQL Server エージェント プロキシ アカウントが書き込み権限を持つかどうかを調べます。プロキシ アカウントが設定されていない場合は、ログは書き込まれません。

どの場合も、SQL Server エージェントの資格情報を使ってジョブを書き込みますが、SQL Server はジョブ出力ログ ファイルを書き込み先としてサーバー上で選択した場所にそのユーザーが書き込み権限を持つかどうかを調べるようになりました。エラーはジョブ ヒストリに表示されますが、ログ ファイルを書き込めなくても、ジョブ ステップは失敗しません。

ページのトップへ

5.4.5 SQL Agent Mail MAPI プロファイル

(SP3 からの機能)

32 ビット版の SQL Server 2000 では、電子メール警告の送信に拡張 MAPI 電子メール プロファイルを使用するように、SQL Agent Mail を構成できます。拡張 MAPI プロファイルの作成には、Microsoft Outlook などの拡張 MAPI 電子メール アプリケーションを使用できます。64 ビット版の SQL Server 2000 では、SQL Agent Mail は電子メール警告の送信に簡易 MAPI プロファイルのみを使用できます。32 ビット版の SQL Server 2000 では、簡易 MAPI プロファイルを使用しないでください。

ページのトップへ

5.5 SQL Server 接続コンポーネントの機能強化

ここでは SP3a に含まれる SQL Sever 2000 の接続コンポーネントの機能強化について説明します。

ページのトップへ

5.5.1 Microsoft Data Access Components のアップデート

(SP3a からの機能)

SP3a には、Microsoft Data Access Components (MDAC) のアップデートが含まれています。SP3a をインストールすると、MDAC 2.7 Service Pack 1a もインストールされます。MDAC 2.7 SP1a は、SQL Server 2000 がインストールするバージョンの MDAC (MDAC 2.6) からは機能的な変更はありませんが、問題点の修正とセキュリティの強化が含まれています。MDAC 2.7 SP1a は MSXML 3 SP3 へのアップグレードも含んでいます。

注意 Setup が同じバージョンまたはより新しいバージョンの MDAC を検出すると、このバージョンの MDAC はインストールされません。

このバージョンの MDAC の詳細については、 Microsoft Universal Data Access Web サイトを参照してください。このバージョンの MDAC に含まれる問題点の修正は Knowledge Base の記事  326848 に記載されています。この記事は  Microsoft Product Support Services Knowledge Base からアクセスできます。

ページのトップへ

5.5.2 QLogic Virtual Interface Architecture のサポート

(SP3 からの機能)

SQL Server は QLogic Virtual Interface Architecture (VIA) System Area Network (SAN) 実装をサポートするようになりました。QLogic VIA 経由の接続に対する SQL Server サポートを有効にするには、クライアント コンピュータとサーバー コンピュータの両方で、それぞれの Windows system32\drivers\etc フォルダ内の Vihosts というファイルで IP アドレス解決を提供する必要があります。

Vihosts ファイルは以下のような形式になります。

<サーバー コンピュータの VI IP アドレス> <SERVER_COMPUTERNAME>

<クライアント コンピュータの VI IP アドレス> <CLIENT_COMPUTERNAME>

例:

139.4.130.1 SQLCOMPUTER

139.4.130.2 SQLCLIENT

それぞれの QLogic VIA ネットワーク カードからの IP アドレスと、実際のコンピュータ名を使用します。それ以外の場合は、名前付きインスタンスに接続を行ったり、TCP や名前付きパイプのようなその他の IP プロトコルを使って接続を行うことはできません。Giganet VIA 接続では Vihosts ファイルは必要ありません。

注意 クライアント コンピュータで、クライアント ネットワーク ユーティリティを使い、適切な VIA ベンダを識別する必要があります。[ベンダ] ドロップ ダウン ボックスで適切な値を選択します。また、サーバー コンピュータでもサーバー ネットワーク ユーティリティを使って、同様の操作を完了する必要があります。

ページのトップへ

5.6 Meta Data Services の機能強化

ここでは SP3a に含まれる SQL Server 2000 Meta Data Services の機能強化について説明します。

ページのトップへ

5.6.1 Unicode でのメタ データ ブラウザ エクスポート

(SP1 からの機能)

メタ データ ブラウザは、XML ベースのメタ データを Unicode でエクスポートするようになりました。SQL Server 2000 SP1 以前は、ブラウザは英文字以外をサポートしない ANSI コードでエクスポートしていました。この機能変更に対して、ユーザーは何もする必要はありません。この SP3a リリース時点では、エクスポートされるデータは常に Unicode で表現されます。依然として ANSI コードでエクスポートする場合は、レジストリ キー HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Repository\Engine\XMLExport の値を 0 に設定します。 以下のリストは、このレジストリ キーに設定できる値を示しています。

  • NOOBJID=1

  • NOHEADER=2

  • INDENTATION=4

  • UNICODE=8

  • LOGUNMAPPEDTAGS=16

  • EXPORTBASE=32

各フラグの詳細については、SQL Server Books Online の「IExport::Export Method」を参照してください。

ページのトップへ

5.6.2 無効になったスクリプティング サポート

(SP3 からの機能)

情報モデルでのスクリプト サポートが無効になりました。SP3a をインストール後に、アプリケーションがスクリプトが定義されているプロパティやメソッドにアクセスすると、以下のエラー メッセージが表示されます。

EREP_SCRIPTS_NOTENABLED

スクリプトサポートを有効にする方法

引き続きスクリプトを実行する必要がある場合は、以下の手順を使用して、スクリプト サポートを有効にするレジストリ設定を作成できます。

  • レジストリ エディタを開き、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft に移動します。

  • (存在しない場合は) レジストリ キー Repository を作成します。 次にサブキー Engine を作成し、パスが Repository\Engine になるようにします。

  • Engine レジストリ キーに、AllowScripting という名前の新しい DWORD 値を追加し、値を 1 に設定します。

後でスクリプティングを無効にする場合は、この新しいレジストリ キーの値を 0 に設定します。

重要 承認されていないアクセスを防ぐために、常に情報モデルとリポジトリ データベースをセキュリティで保護する必要があります。

ページのトップへ

5.6.3 リポジトリ情報にアクセスするための新しい RepositoryUser ロール

(SP3 からの機能)

SQL Server は msdb データベースに、Meta Data Services リポジトリ エンジンが使用する情報を格納するテーブル、ストアド プロシージャ、およびビューのセットを含んでいます。SP3 では、リポジトリ情報のアクセスと更新に使用する必要のある RepositoryUser という名前の新しい専用ロールが追加されました。このロールには、これらのオブジェクトの作成、読み取り、更新、削除、および実行権限が許可されます。public ロールはこれらのオブジェクトに対して権限を持たなくなりました。

この変更は、今後リポジトリ エンジンが作成するその他のすべてのオブジェクトだけでなく、既存のリポジトリ オブジェクトにも影響します。public ロールを使用してリポジトリにアクセスしているユーザーやアプリケーションを、RepositoryUser ロールに追加する必要があります。

ページのトップへ

5.7 データ変換サービスの機能強化

ここでは SP3a に含まれる SQL Server 2000 データ変換サービスの機能強化について説明します。

ページのトップへ

5.7.1 DTS ウィザードが文字列型の文字を 255 文字に制限しない

(SP2 からの機能)

データをテキスト ファイルにエクスポートするときに、パッケージが文字列型のデータを含むすべての列に最大 8000 文字まで書き込むように、DTS インポート/エクスポート ウィザードがパッケージを設定するようになりました。

ページのトップへ

5.7.2 SQL Server エージェントが実行した DTS パッケージのセキュリティ コンテキストをログに記録する

(SP2 からの機能)

SQL Server エージェントは、ジョブ内の各ステップを実行するセキュリティ コンテキストを記録します。SP3 以降では、このセキュリティ コンテキストを [ジョブ ヒストリ] ダイアログ ボックスに表示します。ジョブ内のあるステップから DTS パッケージを実行すると、SQL Server エージェントはそのパッケージを実行するユーザー アカウントをログに記録します。管理者が、サーバーで定期的に実行するように DTS パッケージのスケジュールを設定するときに発生する権限や認証の問題を診断する場合にこの情報が役に立ちます。

ページのトップへ

5.7.3 SQL Server エージェントのプロキシ アカウントの強化

(SP2 からの機能)

SP2 以前は、SQL Server エージェントのプロキシ アカウントが実行されているサーバー (xp_cmdshell からジョブが実行される場合) またはエージェント (エージェント ジョブの場合) のいずれかのアカウントでユーザーの TEMP フォルダにアクセスできない場合は、サーバーに保存されている DTS パッケージは そのプロキシ アカウントの資格情報では実行できませんでした。このため、ユーザーは SQL Server の開始アカウントまたは SQL エージェントの開始アカウントの TEMP 環境変数を変更して、開始アカウントとプロキシ アカウントの両方がアクセスできるディレクトリを指すように (例 C:\Temp) 変更する必要がありました。SP2 以降では、ユーザーの TEMP フォルダが利用できない場合は、システムの TEMP フォルダを強制的に使用するように DTS が強化されたので、このような変更の必要性が大幅に減少しました。

ページのトップへ

5.7.4 既定で無効になっている Meta Data Services への保存

(SP3 からの機能)

SP3 以降では、DTS パッケージを Meta Data Services に保存するオプションが既定で無効になっています。つまり、[DTS パッケージの保存] ダイアログ ボックスの [場所] ドロップダウン リストに [Meta Data Services] オプションが表示されません。さらに、DTS インポート/エクスポート ウィザードの [パッケージの保存、スケジュールの設定、およびレプリケート] ページでこのオプションが無効になっています。

パッケージを Meta Data Services に保存できるようにする方法

  • SQL Server Enterprise Manager で、[データ変換サービス] ノードを右クリックし、[プロパティ] をクリック後、[Meta Data Services への保存を有効にする] をクリックします。

    注意 このプロパティを変更するには、管理者特権でログオンする必要があります。

Meta Data Service にパッケージを保存するオプションを無効にしているときに、Meta Data Services から既存のパッケージを読み込み、それを編集し、[上書き保存] オプションを使ってそれを Meta Data Services に保存できます。ただし、[名前を付けて保存] オプションからは Meta Data Services を利用できません。たとえば、別の名前を使ってパッケージを Meta Data Services に再保存することはできません。

ページのトップへ

5.8 XML の機能強化

ここでは SP3a に含まれる XML と SQLXML の機能強化について説明します。

ページのトップへ

5.8.1 XPath 式の検証の機能強化

(SP3 からの機能)

SP3 以前は、SQL Server 2000 でインストールされたバージョンの MSXML (MSXML 2.6) は、XPath 式内で現在のコンテキスト ノードを識別する特殊文字省略形 (XPath 構文ではピリオド (.) で示されます) に続く述語を許可しました。これは、この文字の後に場所のパス式が続く必要があるという XPath 構文仕様に違反しています。

SP3 以降を適用すると、アップデート バージョンの MSXML (3.0 SP3) が MDAC アップグレードの一部としてインストールされます。詳細については、「5.5.1 Microsoft Data Access Components のアップデート」を参照してください。

新しいバージョンの MSXML では、 現在のコンテキスト ノードの省略形特殊文字の直後に述語を使用できません。SP3 以降にアップグレード後は、間違った構文を使用する SQLXML クエリ (注釈付きマッピング スキーマに対する XPath クエリと SQLXML クエリの結果を変換するために記述された XSLT スタイルシート内の XPath クエリ) 内の XPath 式は失敗します。

このようなエラーを防ぐために、間違った構文を使用するすべての式を識別し、修正します。たとえば、次の xsl:if 要素で test 属性の値として指定されている XPath 式の構文は、述語 [@ResourceTypeID='2'] が現在のコンテキスト ノードを識別する特殊文字省略形の直後にあるので無効です。

以下のステートメントは以前はエラーを生成しませんでしたが、SP3 以降をインストールした後はエラーになります。

<xsl:if test=".[@ResourceTypeID='2']">

このエラーを防ぐには、XPath 式を以下のように変更する必要があります。

<xsl:if test="@ResourceTypeID='2'">

ページのトップへ

5.9 Virtual Backup Device API の機能強化

以下のトピックは SQL Server 2000 Virtual Backup Device API に適用されます。

ページのトップへ

5.9.1 1 つのスナップショットへの複数のデータベースのキャプチャ

(SP2 からの機能)

ISV は、Virtual Backup Device API を使用して、SQL Server 2000 を自社の製品に統合できます。この API は最大の信頼性とパフォーマンスを提供するようにエンジニアリングされています。これは、完全な範囲のホット バックアップ機能やスナップショット バックアップ機能など、SQL Server 2000 のバックアップと復元の機能をすべてサポートします。

SP1 以前では、1 つ以上のデータベースを一度にフリーズして、バックアップする方法はありませんでした。SP3 以降では、VDC_PrepareToFreeze コマンドを使用して、1 つのスナップショットで複数のデータベースをフリーズし、キャプチャするためのサーバー側サポートが提供されるようになりました。

SP3a の「Virtual Backup Device Specification」には、VDC_PrepareTo Freeze コマンドの更新された情報が含まれています。アップデートされたバージョンの Virtual Device Interface ヘッダー ファイル (vdi.h) は、SP3a Setup ディレクトリの \devtools\include フォルダにあります。

Microsoft SQL Server Downloads Web サイト (英語) の Microsoft Download center からアップデートされた仕様をダウンロードできます。

ページのトップへ

5.10 エラー報告

(SP3 からの機能)

Microsoft SQL Server エラー報告は既定では無効になっています。SQL Server セットアップまたは Analysis Services セットアップを使用してインストール中にこの機能を有効にできます。 また、インストール後に、Enterprise Manager の [サーバーのプロパティ] ダイアログ ボックスまたは分析マネージャの [サーバーのプロパティ] ダイアログ ボックスを使用して、この機能を有効にできます。SQL Server セットアップの実行中にエラー報告機能を有効にすることにより、SQL Server データベース エンジンと SQL Server エージェントの SQL Server エラー報告を許可します。Analysis Services セットアップの実行中にエラー報告機能を有効にすることにより、Analysis Services のエラー報告を許可します。SQL Server と Analysis Services の両方のエラー報告を有効にする場合、SQL Server セットアップの実行中に SQL Server のエラー報告を有効にし、Analysis Services セットアップの実行中に Analysis Services のエラー報告を有効にする必要があります。

この機能を有効にすると、SQL Server データベース エンジン、SQL Server エージェント、または SQL Server Analysis Services で重大なエラーが発生した場合に、Microsoft に報告を自動的に送信するように SQL Server が設定されます。Microsoft はこのエラー報告を SQL Server の機能強化のみに使用し、すべての情報を機密情報として扱います。

エラーに関する情報は、セキュリティで保護された接続 (HTTPS) を経由して Microsoft に送信され、情報はアクセスが制限された場所に格納されます。また、この情報を独自の企業内エラー報告サーバーに送信することもできます。企業内エラー報告サーバーのセットアップに関する詳細については、 Microsoft SQL Server 2005 SP3 リリース ノートを参照してください。

エラー報告には以下の情報を含みます。

  • 問題が発生したときの SQL Server の状態。

  • オペレーティング システムのバージョンとコンピュータ ハードウェアの情報。

  • ユーザーのライセンスを識別するために使用できるデジタル プロダクト ID。

  • コンピュータのネットワーク IP アドレス。

  • エラーの原因となったプロセスのメモリまたはファイルからの情報。

Microsoft は、ユーザーのファイル、名前、住所、電子メール アドレス、またはその他の形式の個人情報を意図的に収集することはありません。ただし、エラー報告にはエラーの原因となったプロセスのメモリまたはファイルにユーザーを特定する情報を含む可能性があります。この情報をユーザーの ID を判断するために使用できる可能性がありますが、Microsoft はこの情報をそのような目的に使用することはありません。

Microsoft のエラー報告データ収集ポリシーについては、 Microsoft Web サイトを参照してください。

エラー報告を有効にしている場合に重大なエラーが発生すると、特定のエラーに関する Microsoft Knowledge Base の記事を指す Microsoft からの応答が Windows イベント ログに表示されることがあります。この応答は、以下の例のようになります。

ソース = MSSQLServerOlapServicesDW 
イベント ID = 1010 
データ = http://support.microsoft.com/support/misc/kblookup.asp?id=Q123456 
&iBucketTable=1&iBucket=39980&Cab=21474432.cab&LCID=1033 
&OS=5.1.2600.2.00010100.0.0

SQL Server データベース エンジンおよび SQL Server エージェントのエラー報告を無効にするには、Enterprise Manager の [SQL Server のプロパティ] ([全般] タブ) に移動し、[エラー報告機能を有効にする] チェック ボックスをオフします。Analysis Services のエラー報告を無効にするには、分析マネージャの [サーバーのプロパティ] に移動し、[エラー報告機能を有効にする] チェック ボックスをオフします。SQL Server (データベース エンジンと SQL Server エージェント) と Analysis Services の両方のエラー報告を有効にしている場合は、SQL Server と Analysis Services のエラー報告を個別に無効にする必要があります。

ページのトップへ

5.11 English Query の機能強化

(SP1 からの機能)

Microsoft は English Query アプリケーションのセキュリティに関する機能強化をリリースしました。この機能強化は、Service Pack の一部としてはインストールされません。ただし、English Query を使用する前にこの機能強化を適用することをお勧めします。セキュリティの機能強化は、SP3a CD-ROM の \EQHotfix フォルダにあります。English Query 機能強化の詳細については、 Microsoft Product Support Services Knowledge Base を参照してください。Knowledge Base の記事  297105 を検索してください。

ページのトップへ

5.12 DB-Library と Embedded SQL for C

(SP1 からの機能)

DB-Library および Embedded SQL for C の API は依然として SQL Server 2000 ではサポートされていますが、SQL Server の将来のバージョンにはこれらの API を使用するアプリケーションでのプログラミング作業に必要なこれらのファイルが含まれなくなるでしょう。DB-Library および Embedded SQL for C を使用して記述された既存のアプリケーションからの接続は、次のバージョンの SQL Server でもサポートする予定ですが、将来のリリースではこのサポートも削除されることになるでしょう。新しいアプリケーションを作成するときは、これらのコンポーネントの使用を避けてください。既存のアプリケーションを修正するときは、これらのテクノロジに依存する部分を取り除くことを強くお勧めします。SQL Server のデータにアクセスするには、DB-Library または Embedded SQL for C の代わりに、ADO、OLE DB または ODBC を使用してください。これらのテクノロジの詳細については、SQL Server Books Online をご覧ください。

ページのトップへ