SQL/MSDE の無人インストール ファイルのカスタマイズ

この記事は、以前は次の ID で公開されていました: JP233312
この資料は、アーカイブされました。これは "現状のまま" で提供され、更新されることはありません。
概要
Microsoft SQL Server 7.0 または Microsoft Data Engine (MSDE) 1.0 の無人 (または自動) インストールは、対話式インストール時のユーザーの応答と選択を記録する .iss ファイルによって自動化できます。

SQL Server 7.0 を使用している場合、SQL Server または MSDE がインストールされていないコンピュータ上で SQL Server Setup (SETUPSQL.EXE) を実行して、ユーザーの要件を満たすカスタム .iss ファイルを生成することができます。最初に、SQL Server インストール用に .iss ファイルに取り込むオプションを選択します。インストール後、Microsoft Windows ルート ディレクトリ (C:\WINNT、C:\WINDOWS など) に Setup.iss という名前のファイルが作成されます。.iss ファイルの名前を変更したりファイルを別の場所に移動したりすることができ、このファイルを使用して、今後同じ設定が必要なインストールを自動化することができます。オプションの Setupsql.exe コマンド ライン パラメータ "k=Rc" を使用すると、ファイルがコピーされるまで待機するのではなくオプションの選択時に Setup.iss ファイルへの書き込みが行われるため、SQL Server を実際にはインストールせずに .iss ファイルを生成することができます。ただし、k=Rc オプションを使用して作成した Setup.iss ファイルは不完全なものです。SQL Server 7.0 Books Online の「セットアップ初期化ファイルの作成」で説明するように、このオプションを使用して作成したファイルを使用可能にするには、修正が必要となります。SQL Server Books Online は、次のマイクロソフト Web サイトからダウンロードできます。新しい .iss ファイルを生成するオプションは、グラフィカル セットアップ ウィザードを含まない MSDE 再配布可能パッケージには使用できません。ただし、既存の .iss ファイルを修正して同じ機能を実現できます。MSDE と SQL Server ではテスト済みのサンプル .iss ファイルが利用できます。ファイル Unattend.iss は MSDE の標準インストールを自動化し、SQL Server の CD には SQL Server の一般的な各種インストール用 (クライアント ユーティリティのみ、Desktop Edition/Standard Edition など) のサンプル .iss ファイルが入っています。

インストール オプションの設定情報は、以下のとおりです。
  • インストール パス
  • サーバーサイド ネットワーク ライブラリ
  • コード ページ
  • ソート順
  • Unicode 照合順序
  • Unicode 比較方法
  • ライセンス モード
  • 同時使用ユーザー数ライセンス
  • 登録されたユーザー名
  • サービス起動時アカウント
  • MSSQLServer/SQLServerAgent の自動起動
この資料の内容のほとんどは、SQL Server Books Online の「セットアップ初期化ファイルの作成」に記載されています。.iss ファイルを使用してインストール処理を自動化する方法については、SQL Server 7.0 Books Online の「自動インストール」と「自動インストールの実行方法 (コマンド プロンプト)」を参照してください。MSDE については、.iss ファイルの場所を指定するコマンド ライン パラメータが MSDE Readme.txt ファイルに記載されています。自動インストールが完了したかどうか、および自動インストールが成功したか失敗したかを判断する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
233337 SQL Server 7.0 や MSDE 1.0 の自動セットアップがいつ完了したかを判定する方法
詳細
.iss ファイルの構造は標準の Windows .ini ファイルの構造と似ています。項目はセクションごとにグループ化され、セクション名は角かっこ ("[" と "]") で示されます。たとえば、次は .iss ファイルの最初のセクションです。
  [InstallShield Silent]  Version=v5.00.000  File=Response File				

インストール パス

    [SetupTypeSQL-0]    szDir=C:\MSSQL7    szDataDir=C:\MSSQL7				
SQL Server または MSDE 用の 2 つのインストール ディレクトリがあります。ルート ディレクトリは、バイナリおよびログ ファイルの場所を指定します。データ ディレクトリは、マスタ、msdb、pubs (SQL Server のみ)、およびモデル データベース用のデータベース ファイルの場所を指定します。データ ディレクトリは、新しいユーザー データベースのデフォルトの場所でもあります。szDir パラメータを変更するとルート ディレクトリが変わり、szDataDir を変更するとデータ ディレクトリが変わります。デフォルトでは、これらのディレクトリは同じディレクトリです。これらのディレクトリが NTFS パーティションにある場合、MSDE をインストールするユーザーおよび SQL Server/MSDE サービス起動時アカウント (下の「サービス起動時のアカウント」を参照してください) として選択した Microsoft Windows NT アカウントには、これらに対するフル コントロール権限が必要です。必要な権限が利用できない場合は、セットアップは失敗します。

サーバーサイド ネットワーク ライブラリ

    [DlgServerNetwork-0]    NetworkLibs=4095    TCPPort=1433    TCPPrxy=Default    NMPPipeName=\\.\pipe\sql\query				
ネットワーク ライブラリには、名前付きパイプ、TCP/IP ソケット、マルチプロトコル、NWLink IPX/SPX、AppleTalk ADSP、Banyan Vines などがあります。サーバーサイド ネットワーク ライブラリの名前付きパイプと Banyan Vines は、Microsoft Windows 95 または Windows 98 ではインストールできません。

: Windows 95 または Windows 98 環境で SQL Server/MSDE を実行する際のその他の制限事項については、SQL Server Books Online の「Windows 95/98 上の SQL Server 7.0」を参照してください。.iss の項目 NetworkLibs は、インストールするネットワーク ライブラリを表すビットマスクです。各ネットワーク ライブラリのビットマスクの値は、以下のとおりです (値は 16 進数と 10 進数で表現されています)。
ネットワーク ライブラリ値 (16 進数)値 (10 進数)
名前付きパイプ0x0000000F15
TCP/IP ソケット0x000000F0240
マルチプロトコル0x00000F003840
NWLink IPX/SPX0x0000F00061440
AppleTalk0x000F0000983040
Banyan Vines0x00F0000015728640
マルチプロトコル暗号化0xF0000000-268435456
インストールするサーバーサイド ネットワーク ライブラリを指定するには、16 進数値とビットワイズ OR 演算を組み合わせて、この値を NetworkLibs 項目に 32 ビット符号付き整数として記述します。たとえば、名前付きパイプとマルチプロトコルをインストールし、マルチプロトコル暗号化を有効にするとします (マルチプロトコル暗号化は、マルチプロトコルが含まれない場合には効果がありません)。この場合には 16 進数値 F0000F0F を使用します。これは 32 ビット符号付き整数では -268431601 として表現されます。
        0000000F   (名前付きパイプ)    OR 00000F00   (マルチプロトコル)    OR F0000000   (マルチプロトコル暗号化)    -----------       F0000F0F  =  -268431601				
または、次の方法を使用します。

上の表の "値 (10 進数)" 列の値を目的のネットワーク ライブラリに使用します。たとえば、名前付きパイプ、マルチプロトコル、およびマルチプロトコル暗号化を含める場合は以下のとおりです。
                 15   (名前付きパイプ)    +        3840   (マルチプロトコル)    +  -268435456   (マルチプロトコル暗号化)    -------------       -268431601				
: Windows 95 または Windows 98 でのインストール以外では、常に名前付きパイプを含めます。

NMPPipeName 項目は SQL Server が受信する名前付きパイプ名です。これをデフォルト ("\\.\pipe\sql\query") から変更するときは必ず調整を行います。

TCPPort 項目は TCP/IP ポート番号を指定し、TCP/IP ソケットのインストール時に使用されます。通常、デフォルトの 1433 から変更することはありません。

TCPPrxy 項目はリモート WinSock プロキシ アドレスで、TCP/IP の設定時にのみ適用されます。ほとんどの場合は "Default" です。

NWLinkObj 項目は Novell Bindery サービス名です。この項目は、NWLink IPX/SPX が含まれる場合にのみ存在します。

BanyanObj 項目は StreetTalk サービス名です。これは、Banyan Vines が選択された場合にのみ使用されます。

ApplObj 項目は AppleTalk サービス オブジェクトです。これは、AppleTalk ADSP ネットワーク ライブラリが選択された場合にのみ使用されます。

コード ページ、並べ替え順、Unicode 照合順序、Unicode 比較形式

    [DlgCpSortUnicode-0]    SortId=52    LCID=1033    CompStyle=196609				
SortID 項目は、SQL Server/MSDE のコード ページと並べ替え順の両方を識別します。ほとんどの場合、SortID にはデフォルトの 52 が使用されます (これは、コード ページ 1252 および大文字と小文字を区別しない辞書順を指定します)。各コード ページ (文字セットとも呼ばれます) では、コード ページに関連付けられている、サポートされる並べ替え順のセットが使用されます。各並べ替え順は並べ替え順 ID によって識別されます。また、並べ替え順 ID は並べ替え順が関連付けられているコード ページを一意に識別します。代替並べ替え順 ID (および関連付けられた文字セット) の一覧については、SQL Server 7.0 Books Online の「並べ替え順 ID」を参照してください。この記事に関する一般情報がさらに必要な場合は、Books Online の「コード ページと並べ替え順」を参照してください。

ロケール ID 項目 (LCID) は Unicode 照合順序を指定します。Unicode 照合順序は、Unicode データの並べ替え方法を定義します (これは文字データの並べ替え順に関する機能に似ています)。一般に、ロケール ID にはデフォルトの 1033 (General Unicode) を使用します。Unicode データの代替並べ替えが必要な場合は、Books Online の「Unicode 照合順序」を参照してください。

Unicode 比較方法を変更して、Unicode 照合順序内で Unicode 文字の並べ替えを調整することができます。通常はデフォルト値の 196609 を使用します。Unicode 比較方法は、次の要素を持つビットマップの CompStyle 項目で表されます。
方法値 (16 進数)値 (10 進数)
大文字小文字を区別しない0x000011
アクセントを区別しない0x000022
ひらがなカタカナを区別しない0x1000065536
全角半角を区別しない0x20000131072
CompStyle の値は NetworkLibs ビットマスクと同様に計算できます (上の「サーバーサイド ネットワーク ライブラリ」で説明しています)。たとえば、デフォルトの 196609 (16 進数では 0x30001) は、[大文字小文字を区別しない]、[ひらがなカタカナを区別しない]、および [全角半角を区別しない] オプションを組み合わせた結果です。
             1   (大文字小文字を区別しない)    +  65536   (ひらがなカタカナを区別しない)    + 131072   (全角半角を区別しない)    ---------      196609				

ライセンス

    [License]    License Mode=PERSERVER    License Limit=15				
License Mode 項目には "PERSERVER" と "PERSEAT" の値があります。License Limit 項目は、購入した同時使用ユーザー数 SQL クライアント アクセス ライセンス (CAL) の数を指定します。License Mode が PERSEAT の場合には License Limit 項目はありません。

[License] セクションは、MSDE または SQL Server Desktop Edition のインストールには適用されません。つまり、SQL Server Desktop Edition または MSDE へのクライアント接続には SQL CAL は必要ありません。しかし、SQL Server Desktop がインストールされるコンピュータは、接続クライアント数 SQL CAL の対象に含める必要があります。同様に、MSDE が SQL Server と対話する場合、MSDE がインストールされるコンピュータには接続クライアント数 SQL CAL が必要です。SQL Server Desktop edition のライセンスの関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
207809 [SQL]INF:SQL Server7.0 Desktop に対する DTS/レプリケーションのライセンス

登録されたユーザー名

    [SdRegisterUser-0]    szName=User Name    szCompany=Company Name				
MSDE または SQL Server のインストール処理中に、登録されたユーザー名と会社名をカスタマイズできます。ユーザー名の変更には szName を、会社名を含めるには szCompany をそれぞれ変更します。

サービス起動時のアカウント

    [DlgServices-0]    Local-Domain=61680    AutoStart=255    SQLDomain=MyDomainName    SQLDomainAcct=MyDomainUser    SQLDomainPwd=....    AgtDomain=MyDomainName    AgtDomainAcct=MyDomainUser    AgtDomainPwd=....				
[DlgServices-0] セクションは、MSSQLServer および SQLServerAgent サービスが実行されるアカウントのプロパティを定義します。Local-Domain 項目は、これらの各アカウントが Windows NT ドメイン アカウントまたは特別な LocalSystem アカウントであるかどうかを指定するビットマップです。ローカル システム アカウントではなくドメイン アカウントを使用する必要がある場合については、SQL Server Books Online の「SQL Server サービスのユーザー アカウントの作成」と「SQLServerAgent サービスの起動アカウント」を参照してください。Windows 95 または Windows 98 の場合、サービスは LocalSystem アカウントを使用するようにインストールする必要があります。これらのオペレーティング システムはサービス コントロール マネージャを提供しないため、サービスは共に現在の対話ユーザーのセキュリティ コンテキストの下で実行されます。Local-Domain 項目のオプションは、以下のとおりです。
オプション値 (16 進数)値 (10 進数)
MSSQLServer で LocalSystem を使用する0x000F15
MSSQLServer でドメイン アカウントを使用する0x00F0240
SQLServerAgent で LocalSystem を使用する0x0F003840
SQLServerAgent でドメイン アカウントを使用する0xF00061440
上の例では、セクション [DlgServices-0] の Local-Domain が 61680 です。これは、MSSQLServer と SQLServerAgent がドメイン アカウントで起動することを示しています (61440 + 240 = 61680)。

AutoStart 項目は、各サービスがコンピュータの起動時 (Windows NT の場合) またはユーザーのログオン時 (Windows 95 または Windows 98 のいずれかの場合) に自動起動するように設定するかどうかを制御するビットマスクです。上の例では、MSSQLServer と SQLServerAgent は共に AutoStart (240 + 15 = 255) に設定されています。
オプション値 (16 進数)値 (10 進数)
MSSQLServer の自動起動0x000F15
SQLServerAgent の自動起動0x00F0240
このオプションは、Windows 95 または Windows 98 のグラフィカル セットアップ画面では表示されないため、これらのプラットフォームの場合 SQL セットアップによって SQLServerAgent または MSSQLServer を AutoStart に設定することはできません。Windows 95 または Windows 98 で MSSQLServer サービスまたは SQLServerAgent サービスを開始する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
196654 [SQL]INF:Windows 95/98 上の SQL Server サービスの制御方法
Windows NT では、MSSQLServer を自動起動するときにのみ SQLServerAgent を自動起動できます。これは SQLServerAgent サービスが MSSQLServer に依存するためです。このセクションのその他の項目 (SQLDomain、SQLDomainAcct、SQLDomainPwd など) は、Local-Domain 項目がこれらのサービスのいずれかまたは両方で LocalSystem アカウントではなく Windows NT ドメイン アカウントを使用することを示す場合に、どの Windows NT アカウントを使用するかを指定します。これらの項目は、LocalSystem アカウントが使用される場合は存在しません。パスワード項目は暗号化され、SQL Server セットアップを対話的に実行して新しい .iss ファイルを生成することでのみ取得できます。使用環境でこれが不可能または実用的でない場合は、LocalSystem アカウントで実行 (Local-Domain=3855) するように MSSQLServer と SQLServerAgent をインストールする必要があります。

後で必要に応じて、Windows NT ユーザーはサービス起動時アカウントを変更できます (SQL Server Books Online の「別のユーザー アカウントでログオンするために、SQL Server サービスをセットアップする方法 (Windows NT)」と「SQL Server サービスのユーザー アカウントの作成」を参照してください)。Windows NT では、自動化が必要な場合には、インストール後にユーティリティ Scm.exe (MSSQL7\BINN ディレクトリにあります) を使用して、サービス起動時アカウントを LocalSystem からドメイン アカウントに変更できます。詳細については、上記の「サポート技術情報」 (Microsoft Knowledge Base) の資料を参照してください。
プロパティ

文書番号:233312 - 最終更新日: 02/23/2014 13:48:25 - リビジョン: 6.0

  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft Data Engine 1.0
  • kbnosurvey kbarchive kbinfo KB233312
フィードバック