首页 > 解决方案 > 通过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 的工作。

标签: mysqlpowershell

解决方案


您需要调用Start-Processwith作为文件名,并使用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 问题发布真实密码。


推荐阅读