Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

SQL Server 2012 Express


23 replies to this topic

Hyper71

Hyper71
  • Full Members
  • 44 posts

Posted 22 January 2013 - 08:39

Hallo

In einem von Flexera veröffentlichten Artikel (Q204468: InstallShield 2012 Spring/InstallShield 2012 Spring SP1 Release Notes) wird beschrieben, dass es Prerequisites für Microsoft SQL Server 2012 Express gibt die unter anderem mit einem Basic MSI Projekt kompatibel sind. Genau das was ich brauche. Wenn ich nun dieses Prerequisite aktiviere passiert das was immer passiert wenn SQL Server 2012 in einem Setup integriert wird, die Installation bleibt hängen. Warum macht IS extra Prerequisites die dann nicht funktionieren?
Ich habe verschiedene Artikel gefunden, die beschreiben, dass SQL 2012 nicht in einem Setup integriert werden kann.
Hat jemand eine Idee oder bereits SQL Server 2012 Express erfolgreich integrieren können?

Bin dankbar für jedes Feedback.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 January 2013 - 19:38

Besteht das Problem auch, wenn du die Prerequisite nicht mit einem Feature verknüpfst?

Hyper71

Hyper71
  • Full Members
  • 44 posts

Posted 25 January 2013 - 11:03

Wenn ich das Prerequisites nicht mit einem Feature verknüpfe funktioniert es zwar,
aber so wird der SQL Server 2012 Express immer installiert und das ist in unserem Fall ein absolutes No-Go.

Habe nun ein separates Setup nur für SQL 2012 erstellt welches ich am Ende der Installation im Schlussdialog auf dem Button Fertigstellen silent ausführe.
Somit kann ich bestimmen ob SQL installiert werden darf oder nicht.
Damit das separate Setup mit dem SQL 2012 nicht hängen bleibt, musste ich den Aufruf aus einer Custom Action mit VB-Sript machen.
Funktioniert nun auch unter Windows 8.

Jetzt ist noch 1 Punkt offen, wie kann ich das separate SQLSetup.exe ausführen ohne dass es einen Eintrag in der Programmtabelle in Windows gibt?
Das Property ARPSYSTEMCOMPONENT=1 funktioniert nur bei .msi aber nicht mit .exe



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 25 January 2013 - 11:36

Diese Frage kann dir nur die Doku zum SQLSetup.exe beantworten (oder evtl. der Aufruf SQLSetup.exe /?). Wahrscheinlich gibt es einen Parameter wie /s order /q zu diesem Zweck.

Majue

Majue
  • Full Members
  • 185 posts

Posted 10 February 2016 - 09:45

Hallo Hyper71,

 

ich habe das gleiche Problem. Auch bei mir funktioniert die Installation des SQL-Server 2012 Express nicht, wenn ich das separate Setup per CA aufrufe. Wie muss denn das VB-Script aussehen, damit es funktioniert?


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Hyper71

Hyper71
  • Full Members
  • 44 posts

Posted 10 February 2016 - 11:39

Hallo Jürgen

 

Wichtig beim Aufruf der CA ist, dass sie nach dem EndDialog-Event ausgeführt wird. Sonst ist das Haupt-Setup noch nicht fertig wenn das SQL-Setup startet und somit bleibt dann die SQL-Installation hängen.

 

Gruss

Heiko



Majue

Majue
  • Full Members
  • 185 posts

Posted 10 February 2016 - 11:57

Das werde ich doch direkt einmal testen!


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Majue

Majue
  • Full Members
  • 185 posts

Posted 10 February 2016 - 13:36

Ich hatte die CA im Dialog "SetupCompleteSuccess" eingebaut, nach "EndDialog" als "DoAction". Leider bleibt die SQL-Server 2012 Express Prerequisite trotzdem hängen. Wie sollte denn die CA aussehen, damit es funktioniert?


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Hyper71

Hyper71
  • Full Members
  • 44 posts

Posted 12 February 2016 - 16:14

Das scheint soweit alles richtig zu sein. Die CA selber habe ich Synchronus (Check Exit code), Immediate Execution, Always execute konfiguriert.

 

Wie sieht denn das SQL-Setup aus? Hast du dort den Aufruf des SQL-Prerequisite als "install beofe Feature selection" eingebunden? Das ist wichtig, denn so startet das eigentlich SQL-Setup noch nicht und wartet so lange bis die SQL-Installation fertig ist.

 

Wenn die SQL-Installation hängt, läuft dann auch sicher das Haupt-Setup nicht mehr im Hintergrund? Und falls du unter Windows 10 testest, unbedingt alle Windows Updates im voraus installieren und dann neustarten. Wenn ein Neustart im Hintergrund ansteht verweigert SQL die Installation.



Majue

Majue
  • Full Members
  • 185 posts

Posted 15 February 2016 - 10:57

Das scheint soweit alles richtig zu sein. Die CA selber habe ich Synchronus (Check Exit code), Immediate Execution, Always execute konfiguriert.

 

Die CA habe ich auf "Asynchronous (No wait for comletition)" eingestellt. Weniger Kontrolle geht nicht! Sie steht ebenfalls auf "Always execute", was aber nicht sonderlich relevant sein sollte, da sie ja manuell gestartet wird.

 

Wie sieht denn das SQL-Setup aus? Hast du dort den Aufruf des SQL-Prerequisite als "install beofe Feature selection" eingebunden? Das ist wichtig, denn so startet das eigentlich SQL-Setup noch nicht und wartet so lange bis die SQL-Installation fertig ist.

 

Ja, genauso habe ich es gemacht. Wenn ich das SQL-Setup manuell starte (nachdem es aus dem anderen Setup heraus abgebrochen ist), funktioniert es auch einwandfrei!

 

Wenn die SQL-Installation hängt, läuft dann auch sicher das Haupt-Setup nicht mehr im Hintergrund?

 

Es wird zumindest nicht mehr im Task-Manager angezeigt. Da ich das SQL-Setup erst nach "End dialog" starte, sollte es so sein.

 

Und falls du unter Windows 10 testest, unbedingt alle Windows Updates im voraus installieren und dann neustarten. Wenn ein Neustart im Hintergrund ansteht verweigert SQL die Installation.

 

Vielleicht sollte ich die nächsten Tests dann mal unter Windows 7 durchführen!

 

 

Wo speichert Windows 10 64-Bit eigentlich die Dateien hin, wenn ich im Haupt-Setup angegeben habe, dass der Ordner "[WindowsFolder]Downloaded Program Files" als Ziel für das SQL-Server-Setup verwendet werden soll? Es landet jedenfalls nicht in diesem Ordner, aber das Setup wird trotzdem gestartet!


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 15 March 2016 - 12:10

Hallo,
wir wollen/müssen auch den SQL Server instllieren (wenn der Kunde noch keinen eigenen Server hat).
 
 

ich hatte die CA im Dialog "SetupCompleteSuccess" eingebaut, nach "EndDialog" als "DoAction". Leider bleibt die SQL-Server 2012 Express Prerequisite trotzdem hängen. Wie sollte denn die CA aussehen, damit es funktioniert? 

 

 

Wie bindet man den ein Prerequisite manuell bei einer CA ein?

 

Ich habe mir die "SQLEXPR_x86_ENU.exe" aus dem Prerequisite genommen und installiere diese einfach mit.

Nun kann ich die EXE einfach per CA ausführen (z.B. als Typ 210).

 

Nun greifen zwar nicht mehr die Prüfungen der Prerequisite, aber ich kann das Setup problemlos am Ende der Installation aufrufen und ausführen lassen.

 

 

 

Ich hatte mal irgendwo gelesen, dass man bei der manuellen SQL Server Installation eine Datei, mit allen während der Installation gemachten Angaben

erstellen kann. Diese Datei soll man dann später zur automatiscchen Installation verwenden können.

Wir wollen nämlich, dass der Kunde keine weiteren Angaben bei der SQL Server Installation machen soll/braucht.

 

Grüße

  Dietmar



Majue

Majue
  • Full Members
  • 185 posts

Posted 15 March 2016 - 14:41

Man kann die Datei "Setup.exe" einfach mit ein paar Parametern starten, so dass kein manueller Eingriff nötig ist.


 

Z. B.: /ACTION=Install /QS /HIDECONSOLE /IACCEPTSQLSERVERLICENSETERMS /UpdateEnabled=False /FEATURES=SQLENGINE SNAC_SDK /INSTANCENAME=MEINE_INSTANZ /BROWSERSVCSTARTUPTYPE=Automatic /SAPWD=mein_Passwort /SECURITYMODE=SQL /SQLSVCACCOUNT="NT AUTHORITY\SYSTEM" /TCPENABLED=1

 

Oder man hinterlegt die ganzen Parameter (und noch mehr) in einer Konfigurationsdatei (ConfigurationFile.ini), was aber nicht unbedingt einfacher ist.


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Majue

Majue
  • Full Members
  • 185 posts

Posted 15 March 2016 - 15:40

Leider kann ich nicht einfach das Setup ohne Prerequisite ausführen, da nach der Installation des Servers noch SQL-Scripte nach Auswahl ausgeführt werden sollen. Es muss also zuerst das eigentliche Programm installiert werden, und danach - wenn es ausgewählt wurde - das Setup mit dem SQL-Server als Prerequisite gestartet werden.


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 15 March 2016 - 15:43

Hi Jürgen,

der Aufruf

[INSTALLDIR]\SQLEXPR_x86_ENU.exe /ACTION=Install /QS /HIDECONSOLE /IACCEPTSQLSERVERLICENSETERMS /UpdateEnabled=False /FEATURES=SQLENGINE SNAC_SDK /INSTANCENAME=MEINE_INSTANZ /BROWSERSVCSTARTUPTYPE=Automatic /SAPWD=mein_Passwort /SECURITYMODE=SQL /SQLSVCACCOUNT="NT AUTHORITY\SYSTEM" /TCPENABLED=1

funktioniert. Es wird ohne Benuzter abfragen installiert.

 

Nur ganz zu Begin soll man den Ordner festlegen, in dem SQLEXPR_x86_ENU.exe die Dateien für die Installation entpacken will.

Kann man diese Abfrage auch noch umgehen oder muss man ein anderes SQL-Setup verwenden?

 

Grüße

  Dietmar



Majue

Majue
  • Full Members
  • 185 posts

Posted 15 March 2016 - 15:56

Bei mir wird nicht danach gefragt. Ich verwende allerdings das Setup aus der Prerequisite dafür:

Microsoft SQL Server 2012 Express SP1 Edition (SQL Server Express) onto both 32-bit and 64-bit (WoW) operating systems

 

Hier soll sie zum Download bereitliegen:

http://download.micr...XPR_x86_ENU.exe


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 16 March 2016 - 12:02

Stimmt, das 2012er Setup fragt da nicht nach.

 

Das 2014er tut es aber, auch bei der Instalaltion als Prerequisite.  Die Abfrage kann man aber so umgehen: SQLEXPR_x86_ENU.exe /u /x:C:\Ablageort\



Majue

Majue
  • Full Members
  • 185 posts

Posted 18 March 2016 - 11:44

Egal was ich mache, das Setup vom SQL-Server bleibt immer lange in dem Fenster stehen, wo die Dateien kopiert werden und ggf. nach Updates gesucht wird (das habe ich aber abgewählt). Dann schließt sich das Fenster irgendwann und nichts ist passiert. Und das, obwohl definitiv kein anderes Setup mehr läuft.

Starte ich dann das Setup manuell (die Datei ist ja noch auf dem Rechner), dann läuft es sofort korrekt durch.

Es ist wirklich merkwürdig. Woran kann es denn noch liegen?


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Majue

Majue
  • Full Members
  • 185 posts

Posted 18 March 2016 - 11:56

Wenn ich das Setup mit den gleichen Parametern, die ich in der CA verwende, manuell mit einer Batchdatei starte, funktioniert es problemlos. Wie kann ich denn eine Batchdatei aus einem Setup heraus starten? Geht das auch mit Hilfe einer CA? Vielleicht kann mir jemand helfen, bevor ich lange herumexperimentieren muss.


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Majue

Majue
  • Full Members
  • 185 posts

Posted 18 March 2016 - 12:30

Ich weiß nicht, ob das weiterhilft, aber hängen bleibt wohl die Datei "SCENARIOENGINE.EXE".


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Majue

Majue
  • Full Members
  • 185 posts

Posted 30 March 2016 - 10:20

Stimmt, das 2012er Setup fragt da nicht nach.

 

Das 2014er tut es aber, auch bei der Instalaltion als Prerequisite.  Die Abfrage kann man aber so umgehen: SQLEXPR_x86_ENU.exe /u /x:C:\Ablageort\

 

Ja, der Ablagepfad wird dann zwar ohne Rückfrage angelegt, aber danach startet das Setup nicht automatisch mit den weiteren Parametern. Irgendetwas läuft da noch falsch.


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 20 April 2016 - 08:21

Das Problem mit dem Parameter /u und /x ist mir nun auch aufgefallen. Aber wir haben dafür auch noch keine Lösung gefunden.

 

 

Weiß jemand wie man das SQL Server Setup ausführen/aufrufen muss, wenn man es nicht als Prerequisite ausführen will (der Kunde soll ja selbst

wählen können ob er es installiert haben will).

 

Eine Möglichkeit wäre der Aufruf des SQL Setups ganz am Ende wenn man der eigenen Installation fertig ist.

 

Aber dann hat man ja keine Kontrolle mehr und kann nicht prüfen, ob die Installation erfolgreich war.

 

Ausserdem wollen wir noch ein weiteres Tools installieren, welches die gesamte SQL Datenbank (eine Instanz) verschlüsselt.

Dies kann man aber erst nach der SQL Server Installation installieren.


Edited by Spitfyr, 20 April 2016 - 08:22.


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 20 April 2016 - 10:45

Ich habe bei Microsoft eine Lösung gefunden, mit der ich das InstallShield Prerequisite Setup "SQL Server 2014 Express" mit einem Feature verbinden kann.

 

Wenn man dem Setup als Parameter /SkipInstallerRunCheck übergibt, friert das SQL Setup nicht ein.

Info unter : https://support.micr...e-de/kb/2820068

oder https://support.micr...n-us/kb/2820068  (hier stimmen wenigstens die verlinkungen)

 

Ich habe das erst mal nur unter Windows 7 ausprobiert.

 

Aber nun könnte der Kunde selbst auswählen, ob er den SQL Server installieren will und man muss das SQL Setup nicht ganz am Ende starten (damit es nicht "einfriert").


Edited by Spitfyr, 20 April 2016 - 10:53.


Majue

Majue
  • Full Members
  • 185 posts

Posted 27 June 2016 - 13:37

Prima, das werde ich doch bei Gelegenheit mal testen!


Gruß
Jürgen Markert

(Anwender von InstallShield 2016 - Professional Edition)


Spitfyr

Spitfyr
  • Full Members
  • 162 posts

Posted 08 August 2016 - 12:29

Wir starten das SQL Server Setup nun als Prerequisite (welches an ein Feature verknüpft ist) mit den Optionen

/q /SkipInstallerRunCheck /ACTION=Install /INSTANCEDIR="[SQL_INSTRANCE_DIR]" /INSTANCENAME=[SQL_INSTANCENAME] usw. usw.

 

Wenn man /q anstatt /QUIETSIMPLE verwendet erscheint gar keine Abfrage bzgl. des Ordners wohin das Setup entpackt wird.

Auch die Instalaltion des SQL Verservers erfolgt "im Verborgenen".

 

Ergänzung: und wenn man /qs verwendet erscheint noch die Fortschrittsanzeige (aber erst aber Setup mit SP1).


Edited by Spitfyr, 19 August 2016 - 12:31.