我之前问过类似的问题,但从未解决,所以我又来了!
我有一个无人值守的 SQL Server 2005 安装,当在尚未安装 SQL Server 的机器上安装 SQL Server 时效果很好。
我在执行安装时使用以下参数(这是通过 Inno Setup 自动安装的):
#define SQL_SILENT "/passive /qb"
#define SQL_USERNAME "username=MyUserName"
#define SQL_COMPANYNAME "companyname=MyCompanyName"
#define SQL_ADDLOCAL "ADDLOCAL=SQL_Engine"
#define SQL_UPGRADE ""
#define SQL_DISABLENETWORKPROTOCOLS "disablenetworkprotocols=0"
#define SQL_INSTANCENAME "instancename=MYSQLINSTANCE"
#define SQL_SQLAUTOSTART "SQLAUTOSTART=1"
#define SQL_SECURITYMODE "SECURITYMODE=SQL"
#define SQL_SAPWD "SAPWD=StrongPassword"
#define SQL_SQLACCOUNT "SQLACCOUNT="""""
#define SQL_SQLPASSWORD "SQLPASSWORD="""""
它可以毫无问题地安装 SQL Server Express 的实例。但是,当我尝试在已经有另一个带有工作站组件的实例的机器上安装 SQL Server 时,我收到以下错误:
“您在 ADD_LOCAL 属性中指定的组件已安装。要升级现有组件,请参阅 template.ini 并将 UPGRADE 属性设置为组件的名称。”
我也尝试过根据错误消息使用 UPGRADE 方法
#define SQL_UPGRADE "UPGRADE=SQL_Engine INSTANCENAME=MYSQLINSTANCE"
但得到以下错误:
“SQL Server 安装程序无法执行升级,因为该组件未安装在计算机上。要继续,请验证当前安装的要升级的组件,并且在 ADDLOCAL 属性中指定了要升级的组件。”
我可以从添加/删除程序(Vista 中的程序和功能)中手动删除工作站组件,并且安装工作正常,但这不是我每次都想手动执行的操作。特别是如果它安装在使用这些组件的 PC 上。
对于如何阻止在无人值守安装期间显示此错误的任何建议,我将不胜感激。
谢谢