SQL Server の修正プログラム インストーラ

文書翻訳 文書翻訳
文書番号: 330391 - 対象製品
この資料に記載されている情報は、すべてのオペレーティング システムを対象として、ビルド番号 761 から 977 未満の Microsoft SQL Server 2000 Service Pack 3 (SP3) 修正プログラムに適用されます。また、ビルド番号 977 から 2037 未満の SQL Server 2000 SP3 修正プログラムについても、Microsoft Windows 98、Microsoft Windows Millennium Edition、または Microsoft Windows NT を実行しているコンピュータにインストールした場合に限り、適用されます。Microsoft Windows 2000、Microsoft Windows XP、または Microsoft Windows Server 2003 を実行しているコンピュータにビルド 977 以降の SQL Server 2000 SP3 修正プログラムをインストールする場合は、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
842960 SQL Server 7.0 および SQL Server 2000 (32 ビット) 修正プログラム インストーラについて
Windows 98、Windows Millennium Edition、および Windows NT では、SQL Server 2000 Service Pack 4 (SP4) 以降のバージョンはサポートされません。したがって、SQL Server 2000 SP4 以降のバージョンについては、これらのオペレーティング システムに対する修正プログラムのサポートはありません。
すべて展開する | すべて折りたたむ

目次

概要

Microsoft SQL Server 2000 の修正プログラムは、自己解凍型の実行可能ファイルとしてパッケージ化され、ユーザーに配布されます。修正プログラム インストーラでは、修正プログラムのインストールが容易になるように、GUI ベースのセットアップ プログラムを使用しています。また、修正プログラム インストーラを使用すると、組織全体に対する修正プログラムのインストール処理を自動化することもできます。

修正プログラム インストーラの実行可能ファイルの名前は、以下のような形式になっています。

X.YY.ZZZZ_LangName.exe
  • X は、メジャー バージョン番号です。
  • YY は 2 桁のマイナ バーション番号です。
  • ZZZZ は修正プログラムの番号です。
  • LangName は、修正プログラムのローカライズ対象の言語を示す、3 文字の略語です。
たとえば、SQL Server 2000 の修正プログラム番号 701 の日本語版は以下のようになります。

8.00.0701_jpn.exe

パッケージの解凍時にディスク容量不足のエラーが発生した場合は、以下の「サポート技術情報」 (Microsoft Knowledge Base) 資料を参照してください。
301913 [BUG] SQL Server 2000 のダウンロード ファイルを抽出するとエラー メッセージ "ドライブ x:\ に十分な空き容量がありません" が表示される

詳細

修正プログラム インストーラをインストールする前の作業

マイクロソフトでは、修正プログラム インストーラをインストールする前に、以下のデータベースをバックアップしておくことをお勧めします。
  • master
  • msdb
  • model
インストール後に修正プログラムをロールバックする場合、復元は上記のバックアップを使用して行う必要があります。ロールバック処理の詳細については、この資料の「修正プログラムの削除またはロールバック」に記載されています。修正プログラム インストーラをインストールしてもユーザー データベースは変更されませんが、システム データベースは変更されることがあります。

修正プログラム インストーラの使用方法

修正プログラムのインストール処理を開始するには、修正プログラムの実行可能ファイルを実行する必要があります。修正プログラムの標準的なインストールでは、修正プログラムの実行可能ファイルをサーバー コンピュータに保存してから実行します。クラスタ環境での修正プログラムのインストール手順については、この資料の「クラスタ インストール」を参照してください。インストールを実行するには、ローカル管理者の資格情報を持つユーザー アカウントを使用してオペレーティング システムにログオンする必要があります。

インストールを実行すると、パッケージ ファイルが temp フォルダに解凍されます。その後、GUI ベースの修正プログラム インストーラ ツールが開始され、残りのインストール処理が指示されます。

修正プログラムで更新されるファイル

修正プログラムで更新されるファイルの一覧は INF ファイルに記載されています。ファイルの一覧を参照するには、修正プログラムの実行可能ファイルを実行して INF ファイルを抽出する必要があります。

修正プログラムによって更新されるファイルの一覧を取得するには、以下の手順を実行します。

1. 修正プログラムの実行可能ファイルを起動します。ファイルの解凍が終わるまでプログラムを続行します。ファイルは %TEMP% フォルダに解凍されます。この段階ではセットアップをキャンセルしないでください。ここでセットアップをキャンセルすると、解凍されたファイルがすべて %TEMP% フォルダから削除されます。

2. 修正プログラム インストーラの [ようこそ] 画面が表示されたら、%TEMP% フォルダを参照します。TEMP フォルダ内のフォルダのタイムスタンプを参考にして、目的の pftXX~tmp フォルダを特定します。XX はランダムな数字です。

3. このフォルダ内で Hotfix.inf ファイルを探します。すべてのファイル一覧は、この INF ファイルの [FILES] セクションにあります。また、更新時に SQL Server に対して実行されるスクリプトがあるかどうかは、Hotfix.inf ファイルの [SCRIPTS] セクションで確認することもできます。

4. 確認が終了したら、セットアップをキャンセルして、一時フォルダを削除します。

: 修正プログラムで更新されるファイルの一覧は、その修正プログラムについて記載している「サポート技術情報」 (Microsoft Knowledge Base) の資料でも確認できます。文書番号は、修正プログラム インストーラの最初の [ようこそ] 画面に表示されます。

インストーラの動作

修正プログラム インストーラは、以下の手順を使用してインストールを完了します。
  1. 自己解凍型の実行可能ファイルを実行すると、ファイルがコンピュータの temp フォルダに解凍されます。
  2. 修正プログラム インストーラは、セットアップ ログ ファイルの作成を開始する前に、現在ログオンしているユーザーが管理者の資格情報を持つことを確認します。
  3. インストーラは SQL Server のすべてのインスタンスを自動的に検出し、更新対象のインスタンスの一覧を列挙します。修正プログラムの更新対象となるには、SQL Server が特定の要件を満たしている必要があります。特定の修正プログラムに関する「サポート技術情報」 (Microsoft Knowledge Base) の資料には、修正プログラムの適用に必要な条件が詳しく記載されています。たとえば、修正プログラムのインストールに Microsoft SQL Server 2000 Service Pack 2 が必要な場合、修正プログラムの適用前に SQL Server 2000 Service Pack 2 をインストールする必要があります。コンピュータにインストールされた SQL Server が修正プログラムのインストール要件を満たしていない場合、次のようなメッセージが表示され、インストールは中止されます。
    このコンピュータには、この修正プログラムを適用できる SQL のインスタンスがインストールされていません。この修正プログラムに必要なバージョンと Service Pack を確認してください。
  4. 修正プログラムでアップグレードする SQL Server の特定のインスタンスを選択すると、修正プログラム インストーラは、選択した SQL Server に対応する適切なフォルダ名と場所を解決し、メモリに読み取ります。
  5. セットアップでは、SQL Server 認証または Windows 認証のどちらを使用するかなどの、情報の入力が求められます。SQL Server 認証を選択する場合、sa ログオンのパスワードを入力する必要があります。Windows 認証を選択する場合、Windows ログオン アカウントを使用して Windows にログオンした状態で、セットアップを実行している必要があります。そのログオン アカウントは、アップグレード対象の SQL Server インスタンスの sysadmin 固定サーバー ロールに属している必要があります。SQL Server 認証を使用する場合は、対象の SQL Server インスタンスが混合モード セキュリティを使用するように構成されていることを確認します。そのように構成されていない場合、有効な sa パスワードを入力しても認証処理は失敗し、次のエラー メッセージが表示されます。
    ログイン情報が無効です。再試行してください。
  6. 手順 5. のログイン情報を使用して SQL Server にログインすると、セットアップ プログラムによりアップグレード対象のインスタンスの MSSQLSERVER サービスと SQL Server エージェント サービスの両方が停止します。
  7. ここで、修正プログラム インストーラは、既存ファイルを修正プログラムに含まれるファイルに置き換える操作の中核となる手順を行います。これを行うために、インストーラは適用先のコンピュータを検索して、ファイルの存在を確認します。適用先のコンピュータにファイルが存在すれば、置換の要件が満たされます。このチェックに合格したファイルでは、次に、ファイルのバージョンがインストール元のファイルと比較されます。バージョン番号のないファイルについては、日時の情報が使用されます。これにより、インストールされるファイルの一覧が作成されます。
  8. 置換対象として選択された各ファイルは、まずバックアップ フォルダにバックアップされます。このバックアップ フォルダは、そのファイルと同じフォルダに作成されます。バックアップ フォルダには、修正プログラムのビルド番号と同じ名前のサブフォルダが 1 つ含まれます。
    たとえば、SQL Server 2000 の修正プログラム 701 のインストール時に Sqlservr.exe が現在の場所 (C:\Program Files\Microsoft SQL Server\MSSQL\Binn\) で置換される場合、インストーラは C:\Program Files\Microsoft SQL Server\MSSQL\Binn\Backup\0701 のような新しいフォルダ構造を作成し、既存のファイルをこの新しい場所にバックアップした後、既存ファイルを修正プログラム内の新しいファイルに置き換えます。

    同様に、C:\Program Files\Microsoft SQL Server\MSSQL\Binn\Resources\1033 内のファイルを置換対象として選択した場合、既存ファイルは C:\Program Files\Microsoft SQL Server\MSSQL\Binn\resources\1033\Backup\0701 のようなバックアップ フォルダにコピーされた後、修正プログラム内の新しい対応ファイルに置き換えられます。

    : SQL Server インスタンスに対して修正プログラム インストーラを使用した後でそのインスタンスを削除した場合、上記のバックアップ フォルダは SQL Server の削除プログラムでは削除されません。このため、インストーラが作成したこれらのバックアップ フォルダは手作業で削除する必要があります。これらのフォルダを削除しなかった場合、同じコンピュータに同じインスタンス名を使用して Microsoft SQL Server 2000 を再インストールするときに、インストールが失敗します。
  9. インストーラがすべてのサービスを停止すると、ファイルはロックされていない状態になり、単純なコピー操作によって置換できるようになります。ファイルがロックされている場合、インストーラが中断され、次のエラー メッセージが表示されます。
    修正プログラムを適用するために選択した 1 つ以上のファイルを他のプロセスがロックしています。ロックしているファイルの詳細については、ログ ファイルを参照してください。

    すべてのアプリケーションを終了し、修正プログラム インストーラを再起動してください。問題が解決しない場合は、コンピュータを再起動してから、修正プログラム インストーラを再起動してください。
実行する必要のあるスクリプトがある場合、インストーラはすべてのサービスを開始してスクリプトを実行します。

クラスタ インストール

SQL Server 2000 のクラスタ インストール

クラスタ化された SQL Server 2000 に修正プログラム パッケージを適用するには、SQL Server リソースを所有するノードで修正プログラム パッケージを実行する必要があります。実行すると、修正プログラム インストーラが SQL Server リソースをオフラインにし、クラスタのすべてのノードのバイナリを更新します。最後に、SQL Server リソースをオンラインに戻し、修正プログラムに含まれるすべてのインストール スクリプト (.sql) を実行します。

SQL Server 7.0 のクラスタ インストール

クラスタ化された SQL Server 7.0 のインストールでは、まず、各仮想 SQL Server のプライマリ クラスタ ノードから SQL Server フェールオーバー セットアップ ウィザードを実行して、SQL Server のクラスタ化を解除する必要があります。

アクティブ/アクティブ

アクティブ/アクティブ インストールの場合、以下の手順を実行します。
  1. SQL Server 7.0 が最初にインストールされたコンピュータ ノードで、両方の SQL Server リソース グループが管理されていることを確認します。
  2. クラスタの各ノードで、フェールオーバー セットアップ ウィザード ユーティリティを実行して、仮想 SQL Server を削除します。
  3. SQL Server のクラスタ化を解除した後、両方のノードで修正プログラムの実行可能ファイルを実行し、修正プログラムのインストールを正常に完了する必要があります。その後、SQL Server を再びクラスタ化できます。

アクティブ/パッシブ

アクティブ/パッシブ インストールの場合、以下の手順を実行します。
  1. SQL Server 7.0 が最初にインストールされていたコンピュータ ノードで、SQL Server のリソースが管理されていることを確認します。
  2. この同じコンピュータ ノードで、フェールオーバー セットアップ ウィザード ユーティリティを実行して、仮想 SQL Server を削除します。
  3. SQL Server のクラスタ化を解除した後、プライマリ ノードのみで修正プログラム実行可能ファイルを実行し、修正プログラムのインストールを正常に完了する必要があります。その後、SQL Server を再びクラスタ化します。

コマンド ライン パラメータ

修正プログラム パッケージで使用できるコマンド ライン パラメータの一覧を以下に示します。
オプション         定義
------         ----------

/s             自己解凍の進行状況を示すダイアログを無効にします。必ず /a の前に指定します。

/a             自己解凍型 EXE を使用して修正プログラムを実行する際に自動インストール用の
               パラメータを指定する場合、このパラメータは /s 以外のすべてのパラメータの前に
               指定します。これは、インストーラを自動モードで実行する際に必須のパラメータ
               です。

/q             このフラグを使用すると、セットアップ プログラムはサイレント モードで実行され、
               ユーザー インターフェイスは表示されません。

/allinstances  これは、サイレント モードで SQL Server のすべてのインスタンスに修正プログラムを
               適用するために、適用可能な規則を渡す SQL 固有のキーです。また、このフラグを
               使用して、すべての SQL Server 仮想サーバーに修正プログラムを適用するために、
               アクティブ ノードから実行するための適用可能な規則と必要条件を渡すこともできます。

INSTANCENAME   SQL Server のインスタンス名です。次のように指定します。
               INSTANCENAME=<yourinstancename>

BLANKSAPWD     SQL 認証の sa パスワードが空白であることを示します。
               Microsoft Windows NT または Microsoft Windows
               2000 が動作するコンピュータでこのパラメータを入力した
               場合、デフォルトの Windows 認証ログオンではなく、空白
               の sa パスワードでログオンが試行されます。このパラメータ
               の正しい形式は BLANKSAPWD=1 です。このパラメータは
               自動インストール時にのみ認識されます。

SAPWD          空白以外の sa パスワード。このパラメータは、以下の形式で使用します
               SAPWD=yoursapassword。このパラメータを入力した場合、このパラメータは
               Windows NT または Windows 2000 が動作するコンピュータのデフォルトの
               Windows 認証、または BLANKSAPWD より優先されます。
: コマンドの前に、Windows 標準のコマンド ライン プレフィックスである start /wait を使用すると、修正プログラム インストーラの終了後に、制御をコマンド プロンプトに戻すことができます。

コマンド ラインの例

  • SQL Server の既定のインスタンスに、自己解凍の進行状況を示すダイアログ ボックスを無効にして修正プログラムの自動インストールを行うには、次のコマンド ライン構文を使用します。
    8.00.0701_enu.exe /s /a /q
    コマンド ラインに認証情報が指定されていないため、デフォルトの Windows 認証ログオンが使用されます。
  • SQL Server の名前付きインスタンスに修正プログラムの自動インストールを行うには、次のコマンド ライン構文を使用します。
    8.00.0701_enu.exe /a /q INSTANCENAME=FRIDAY SAPWD=MyPwd
    FRIDAY は SQL Server 2000 のインスタンス名です。INSTANCENAME パラメータを servername\instancename の形式で入力すると、インストールは失敗します。
  • start /wait オプションを使用して修正プログラムの自動インストールを行うには、次のコマンド ライン構文を使用します。
    start /wait 8.00.0701_enu.exe /s /a /q INSTANCENAME=sqlinstance02

自動インストールの実行方法

自動インストールは、上記の対話式のインストールとほとんど同様です。インストールをサイレント モードで行う場合には、/q パラメータを使用して自己解凍型 EXE ファイルを実行する必要があります。名前付きインスタンスに修正プログラムを適用する場合は、コマンド ラインで INSTANCENAME パラメータを使用してインスタンス名を指定する必要があります。指定したインスタンスが修正プログラムの要件を満たしていると、上記のように修正プログラムが適用されます。INSTANCENAME パラメータを指定しない場合は、SQL Server のデフォルトのインスタンスに修正プログラムが適用されます。

クラスタでの自動インストールについても、非クラスタ環境の場合と同じ構文を使用できます。たとえば、HELLO\Inst1 (HELLO は仮想サーバー名です) という名前の名前付きインスタンスがクラスタ内にある場合、構文は次のようになります。
start /wait 8.00.0701_enu.exe /q instancename=inst1

ログ ファイル

修正プログラムのインストール処理で実行されたすべての操作は、セットアップ ログ ファイルに記録されます。ログ ファイルには、インストールの各段階で実行されたそれぞれの操作、および各ファイルに対して実行された個別の操作に関する十分な情報が含まれます。このログ ファイルは %WINDIR%\SQLHotfix フォルダに保存されます。それぞれのログ ファイルには、次のような一意の名前が付けられます。

SQLHotfix?.Log

疑問符 (?) は、コンピュータにその修正プログラムをインストールした回数を示します。

インストールに成功した場合、ログ ファイルの最後に次のメッセージが出力されます。
INSTALL SUCCESS
同様に、次のメッセージは修正プログラムのインストール中にエラーが発生したことを示します。
INSTALL FAILURE
次のメッセージは、セットアップ処理中にインストールがキャンセルされ、インストールが中止されたことを示します。
User canceled the installation
インストールに失敗した場合には、関連するエラー コードが修正プログラム インストーラのログに出力されます。

修正プログラムの削除またはロールバック

修正プログラム パッケージをロールバックする場合、更新済みのファイルの削除は手動で行う必要があります。ファイルおよび修正プログラムによって作成された該当するバックアップ ディレクトリの完全な一覧は、セットアップ ログ ファイルに出力されています。上記のように、インストーラは既存のファイルを新しいファイルに置換する前に、既存のファイルをバックアップ フォルダにバックアップします。修正プログラムをロールバックするには、すべてのサービスを停止して、ログ ファイルに記録されたバックアップ フォルダのすべてのファイルを置換する必要があります。修正プログラムのインストール時にスクリプトが実行された場合、スクリプトがシステム データベースに対して行った変更を自動的にロールバックするための簡単な方法はありません。このため、修正プログラムの適用前にシステム データベースをバックアップすることが重要です。

修正プログラムをロールバックする必要があり、サーバーに対して 1 つ以上の .sql スクリプトが実行されたことがセットアップ ログ ファイル (または INF ファイル) に記録されている場合、以下の手順を実行する必要があります。

重要 : 以下の手順には、使用中の master データベースを再構築する操作、および修正プログラムの適用前に作成した master のバックアップから master データベースを復元する操作が含まれます。修正プログラムの適用後に新しいユーザー データベースを作成した場合は、以下の手順を完了した後でユーザー データベースを復元できるように、それらのデータベースをバックアップする必要があります。
  1. すべてのユーザー データベースをデタッチします。詳細については、SQL Server 7.0 Books Online の「データベースのアタッチとデタッチ」、または SQL Server 2000 Books Online の「データベースをアタッチまたはデタッチする方法 (Enterprise Manager)」を参照してください。
    : レプリケーションに関係しているデータベースがある場合、まずパブリッシングとディストリビューションを無効にする必要があります。詳細については、SQL Server Books Online の「パブリッシングおよびディストリビューションの無効化」を参照してください。
  2. SQL Server のすべてのサービス (MSSQLServer、SQLServerAgent、Microsoft Distributed Transaction Coordinator (MS-DTC)、Microsoft Search) を停止します。
  3. 安全のため、Data フォルダを安全な場所にコピーします。データ ファイルとログ ファイルが、デフォルトの Data フォルダ以外の個別のフォルダに存在する場合、そのファイルもコピーします。
  4. コンピュータでバックアップ フォルダを検索し、新しいバージョンのすべてのファイルを以前のバージョンに置き換えます。
  5. master データベースを再構築します。
  6. master、model および msdb データベースを、修正プログラムの適用前に作成したこれらのデータベースのバックアップから復元します。この操作により、バックアップ作成時にアタッチされていたユーザー データベースがすべて自動的にアタッチされます。master データベースの最後のバックアップ後にユーザー データベースを作成した場合は、それらのデータベースをすべてアタッチします。
  7. フルテキスト カタログがある場合は、フルテキスト カタログを復元して再同期します。詳細については、以下の「サポート技術情報」 (Microsoft Knowledge Base) 資料を参照してください。
    240867 [INF] フルテキスト カタログのフォルダとファイルを移動、コピー、およびバックアップする方法
  8. レプリケーションを使用している場合、レプリケーションを手動で再構成する必要があります。
  9. SQL Mail を使用している場合、SQL Mail を再構成します。詳細については、以下の「サポート技術情報」 (Microsoft Knowledge Base) 資料を参照してください。
    263556 [INF] SQL Mail の設定方法

プロパティ

文書番号: 330391 - 最終更新日: 2005年12月19日 - リビジョン: 8.1
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
キーワード:?
kbinfo KB330391
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com