Hallo,
ich versuche in einer Batch Datei folgende Dinge für eine MySQL Installation zu regeln:
- Überprüfen ob MySQL in der Version bereits installiert ist (über die Registry) (das auslesen selbst und speichern in eine Variable funktoiniert)
- Installieren von MySQL Server (quite) // funktioniert
- Konfigurieren von MySQL Server per Batch // funktioniert
Hier dazu die Batch:
Irgendwas stimmt an meinen GOTO's oder in der Abfrage der Registry im Schritt readPath noch nicht. In der Datei some.txt landet leider nur die Ausgabe "readpath" und nicht mehr. Allerdings seh ich den Fehler nicht, da die Abfrage als Einzeiler in der cmd funktioniert.
Weiß jemand wo der Fehler liegt?
Gruß Erik
ich versuche in einer Batch Datei folgende Dinge für eine MySQL Installation zu regeln:
- Überprüfen ob MySQL in der Version bereits installiert ist (über die Registry) (das auslesen selbst und speichern in eine Variable funktoiniert)
- Installieren von MySQL Server (quite) // funktioniert
- Konfigurieren von MySQL Server per Batch // funktioniert
Hier dazu die Batch:
Code:
reg query "HKLM\Software\MySQL AB\MySQL Server 5.1" /v "Location"
IF NOT %ERRORLEVEL%==0 (GOTO install) ELSE (GOTO readpath)
:install
echo install>>some.txt
msiexec /i "c:\temp\install\bws\mysql.msi" INSTALLDIR="%PROGRAMFILES%\MySQLServer" /qb
IF NOT EXIST "C:\Windows\SysWOW64" (SET PROGPATH=%PROGRAMFILES%) ELSE (SET PROGPATH="%PROGRAMFILES(x86)%")
SET PROGPATH=###%PROGPATH%###
SET PROGPATH=%PROGPATH:"###=%
SET PROGPATH=%PROGPATH:###"=%
SET PROGPATH=%PROGPATH:###=%
Goto configure
:readpath
echo ReadPath>>some.txt
for /f "skip=2 tokens=3" %A in ('reg query "HKLM\Software\MySQL AB\MySQL Server 5.1" /v "Location"') do set PROGPATH=%A
echo %PROGPATH%>>some.txt
Goto configure
:configure
echo Config>>some.txt
c:
cd "%PROGPATH%\MySQLServer\bin"
MySQLInstanceConfig.exe -i -q "-l%PROGPATH%\MySQLServer\log\install_log.txt" "-nMySQLServer" "-p%PROGPATH%\MySQLServer" "-t%PROGPATH%\MySQLServer\my-template.ini" "-c%PROGPATH%\MySQLServer\bws.ini" ServerType=DEVELOPMENT DatabaseType=MIXED ConnectionUsage=DSS Port=3306 ServiceName=BWSDatenbank RootPassword=werner
mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('werner');
Irgendwas stimmt an meinen GOTO's oder in der Abfrage der Registry im Schritt readPath noch nicht. In der Datei some.txt landet leider nur die Ausgabe "readpath" und nicht mehr. Allerdings seh ich den Fehler nicht, da die Abfrage als Einzeiler in der cmd funktioniert.
Weiß jemand wo der Fehler liegt?
Gruß Erik