【发布时间】:2013-09-16 12:08:30
【问题描述】:
我将为我的 java 应用程序创建一个安装程序。它使用 mysql 数据库,所以我的程序的安装必须包括 mysql server 5.5 的安装、服务器的配置和我的数据库的加载。我使用 Inno 设置来执行此操作,但我发现了一些问题。我找到了这段代码,但它有点旧
Filename: msiexec; Parameters: "/i mysql-5.5.11-win32.msi /qn INSTALLDIR=""C:\mysql"""; WorkingDir: C:\Users\Gabriele\Desktop\setup; StatusMsg: Sto installando Mysql 5.5.11; Flags: runhidden
Filename: C:\mysql\bin\mysqld-nt.exe; Parameters: --install; WorkingDir: C:\mysql\bin; StatusMsg: Sto installando il Servizio MySQL; Description: Installing MySQL Service; Flags: runhidden
Filename: net.exe; Parameters: start mysql; StatusMsg: Sto Avviando il Servizio MySQL; Description: Avvio Servizio MySQL; Flags: runhidden
Filename: C:\mysql\bin\mysql.exe; Parameters: "-e ""insert into mysql.user(host,user,password) values ('localhost','root', PASSWORD('emmaus');"" -u root"; WorkingDir: {tmp}; StatusMsg: Configurazione del Server della Base di Dati; Flags: runhidden
Filename: C:\mysql\bin\mysql.exe; Parameters: "-u root -h localhost -e ""create database ata";
Filename: C:\mysql\bin\mysql.exe; Parameters: "-e ""grant all privileges on ata.* to ata;"" -u root"; WorkingDir: {tmp}; StatusMsg: Configurazione Server Base di Dati; Flags: runhidden
Filename: C:\mysql\bin\mysql.exe; Parameters: "-e ""flush privileges;"" -u root"; WorkingDir: {tmp}; StatusMsg: Configurazione Server Base di Dati; Flags: runhidden
Filename: C:\mysql\bin\mysql.exe; Parameters: "-u root -h localhost -e ""use ata; source ata.sql;"; WorkingDir: {tmp}; StatusMsg: Caricamento base di dati; Flags: runhidden
当我调试它在第一条语句之后生成一个错误。在第二条指令中找不到指定的程序。我尝试使用 mysqld 而不是 mysqld-nt 但没有任何变化
有人可以帮我吗?
【问题讨论】:
-
您似乎错过了第一行中的
waituntilterminated标志。第二行是在 first 之后但在第一个进程结束之前的进程。 -
我在第一条语句中放置了 waituntilterminated 标志,但消息是:无法运行文件:C:\mysql\bin\misqld.exe createProcess 失败。 code 267 目录名无效
-
mysql 安装到这个特定的文件夹了吗?
-
将
WorkingDir设置为特定用户的桌面很奇怪。如果我要创建设置,我会将 mysql 安装程序包含到安装程序中,并将DestDir设置为{tmp}以及WorkingDir。在测试中,我还将关闭 RUNHIDDEN 标志以查看我的脚本是否按预期工作。 -
mysql的设置位于我在workingdir中指定的路径中。我从windows的地址栏复制了路径
标签: java mysql inno-setup