mysql - 通过powershell安装Mysql.msi时出现以下错误
问题描述
我正在使用以下代码:
$argumentList = @(
'ACTION=Install'
'/q'
'INSTALLLOCATION="C:\Program Files"'
'SERVERTYPE =Full'
'DATABASETYPE =Mixed'
'CONNECTIONUSAGE=DSS'
'PORT = 3306'
'ServiceName=MySQL'
'RootPassword=fakepassword123'
'IAcceptSQLServerLicenseTerms=True'
)
Start-Process -FilePath 'E:\mysql-installer-community-5.5.62.0.msi' -ArgumentList $argumentList -Wait
错误:
Windows® 安装程序。V 5.0.10240.16386
msiexec /Option [可选参数]
Install Options
</package | /i> <Product.msi>
Installs or configures a product
/a <Product.msi>
Administrative install - Installs a product on the network
/j<u|m> <Product.msi> [/t <Transform List>] [/g <Language ID>]
Advertises a product - m to all users, u to current user
</uninstall | /x> <Product.msi | ProductCode>
Uninstalls the product
Display Options
/quiet
Quiet mode, no user interaction
/passive
Unattended mode - progress bar only
/q[n|b|r|f]
Sets user interface level
n - No UI
b - Basic UI
r - Reduced UI
f - Full UI (default)
/help
Help information
Restart Options
/norestart
Do not restart after the installation is complete
/promptrestart
Prompts the user for restart if necessary
/forcerestart
Always restart the computer after installation
Logging Options
/l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>
i - Status messages
w - Nonfatal warnings
e - All error messages
a - Start up of actions
r - Action-specific records
u - User requests
c - Initial UI parameters
m - Out-of-memory or fatal exit information
o - Out-of-disk-space messages
p - Terminal properties
v - Verbose output
x - Extra debugging information
+ - Append to existing log file
! - Flush each line to the log
* - Log all information, except for v and x options
/log <LogFile>
Equivalent of /l* <LogFile>
Update Options
/update <Update1.msp>[;Update2.msp]
Applies update(s)
/uninstall <PatchCodeGuid>[;Update2.msp] /package <Product.msi | ProductCode>
Remove update(s) for a product
Repair Options
/f[p|e|c|m|s|o|d|a|u|v] <Product.msi | ProductCode>
Repairs a product
p - only if file is missing
o - if file is missing or an older version is installed (default)
e - if file is missing or an equal or older version is installed
d - if file is missing or a different version is installed
c - if file is missing or checksum does not match the calculated value
a - forces all files to be reinstalled
u - all required user-specific registry entries (default)
m - all required computer-specific registry entries (default)
s - all existing shortcuts (default)
v - runs from source and recaches local package
Setting Public Properties
[PROPERTY=PropertyValue]
有关命令行语法的其他文档,请参阅 Windows ® Installer SDK。
版权所有 © 微软公司。版权所有。该软件的某些部分部分基于 Independent JPEG Group 的工作。
解决方案
您需要调用Start-Process
with作为文件名,并使用switchmsiexec.exe
将实际的 MSI 文件路径添加到参数列表中。/i
使用您提供的代码,它看起来像:
$argumentList = @(
'ACTION=Install'
'/q'
'/i "E:\mysql-installer-community-5.5.62.0.msi"',
'INSTALLLOCATION="C:\Program Files"'
'SERVERTYPE =Full'
'DATABASETYPE =Mixed'
'CONNECTIONUSAGE=DSS'
'PORT = 3306'
'ServiceName=MySQL'
'RootPassword=fakepassword123'
'IAcceptSQLServerLicenseTerms=True'
)
Start-Process 'msiexec.exe' -ArgumentList $argumentList -Wait
顺便说一句:避免向 SO 问题发布真实密码。
推荐阅读
- php - 如何将 mysql_num_rows 等函数更改为 mysqli?
- docker - Docker容器无法挂载文件夹
- python - 如何在多个java文件中搜索某个语句?
- javascript - 如何修复此正则表达式以使其正确替换 *(在单词之间)?
- html - 我该怎么做才能使我的代码在 2 个不同的屏幕上看起来不错
- docker - 如何在 Jenkins 脚本化管道中使用 dockerhub-notification-plugin?
- php - 有没有办法在 MySQL 更新查询中使用变量
- javascript - 如何从 JQuery AJAX 生成的 HTML 数据中获取属性 id?JavaScript
- node.js - 如何通过 REST API 从 IONIC typescript 读取 node.js app.js 中的数据?
- go - 调用结构上的方法时,Goroutines 不起作用