を編集できまpackage.xml ファイルをアプリケーションでbootstrapperト指定のSQLサーバーのインスタンス

StackOverflow https://stackoverflow.com/questions/2603886

質問

を利用したいSqlExpress2008Bootstrapperのためのネットワーク経由で、パソコンにWindows7、私は利用しないデフォルトのSQLEXPRESSインスタンス.

を試みた編集、package.xml ファイル:C:\Program ファイルを\Microsoft

SDKs\Windows\v7.0A\Bootstrapper\Packages\SqlExpress2008\en\package.xml

更新のコマンド引数instancename=CUSTOMINSTANCE

    <Command PackageFile="SQLEXPR32_x86_ENU.EXE"
             Arguments='/q /hideconsole /action=Install /features=SQL /instancename="CUSTOMINSTANCE" /enableranu=1 /sqlsvcaccount="NT Authority\Network Service" /AddCurrentUserAsSqlAdmin /skiprules=RebootRequiredCheck'
             EstimatedInstalledBytes="225000000"
             EstimatedInstallSeconds="420">

残念ながらのものを作成し、デフォルトの SQLEXPRESS ない CUSTOMINSTANCE

のwixタグ:

   <sql:SqlDatabase
              Id="SqlDatabaseCore"
              ConfirmOverwrite="yes"
              ContinueOnError="no"
              CreateOnInstall="yes"
              CreateOnReinstall="no"
              CreateOnUninstall="no"
              Database="MyDatabase"
              DropOnInstall="no"
              DropOnReinstall="no"
              DropOnUninstall="no"
              Instance="[SQLINSTANCE]"
              Server="[SQLSERVER]">
              <sql:SqlFileSpec
                Id="SqlFileSpecCore"
                Filename="[CommonAppDataFolder]MyCompany\Database\MyDatabase.mdf"
                Name="MyDatabase" />
              <sql:SqlLogFileSpec
                Id="SqlLogFileSpecCore"
                Filename="[CommonAppDataFolder]MyCompany\Database\MyDatabase.ldf"
                Name="MyDatabaseLog" />

<Property Id='SQLSERVER'>.</Property>
<Property Id='SQLINSTANCE'>CUSTOMINSTANCE</Property>

この基準を達成。

役に立ちましたか?

解決

私は、標準のことは知らないが、我々は、コマンドライン上から[SQLExpressのセットアップ実行可能ファイルに新しいINSTANCENAMEを可決しました。まず、一時ディレクトリにSQLEXPRADV_x86_ENU.exeファイルを解凍し、

string workingDir = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);

string pathToSQLSetupTempDirectory = workingDir + Path.DirectorySeparatorChar + "sqlsetup";

if (!System.IO.Directory.Exists(pathToSQLSetupTempDirectory))
{
System.IO.Directory.CreateDirectory(pathToSQLSetupTempDirectory);
}

string path = Path.GetFullPath(workingDir + Path.DirectorySeparatorChar + "SQLEXPRADV_x86_ENU.exe");
string args = "/Q /X:" + pathToSQLSetupTempDirectory;

すると、コマンドラインパラメータを構築し、抽出されたSetup.exeファイルを実行します。管理ツールのインストールを防止するためには、コマンドライン引数に「/機能= SQL」を追加します:

 path = pathToSQLSetupTempDirectory + Path.DirectorySeparatorChar + "Setup.exe";
 args = "/QUIET /Action=Install /Features=SQL,Tools /InstanceName=" + instanceName +
    " /SECURITYMODE=SQL /TCPENABLED=1 /SAPWD=" + sqlSAPswd + " /SQLSYSADMINACCOUNTS=\"Builtin\\Administrators\" /SQLSVCACCOUNT=\"NT AUTHORITY\\NETWORK SERVICE\"";

http://msdn.microsoft.com/en-us/library /ms144259.aspx には、より多くのサポート引数についてを持っています。

他のヒント

はい、これはちょうどあなたがすべてのオカレンスにインスタンス名を変更することを確認して、それを行うための正しい方法である(のx86とx64のパラメータパラメータ)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top