You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Windows Server 2019中用PowerShell配置MySQL ODBC Unicode驱动

解决Windows Server 2019中32位MySQL ODBC 5.2 Unicode驱动的PowerShell配置问题

修正后的完整配置脚本

# 定义AWS RDS端点地址
$rdsEndpoint = "rds.xxxxxxxxx.ap-south-1.rds.amazonaws.com"
# 数据库登录凭证(建议后续改用安全方式存储,避免明文)
$dbUsername = "your_db_user"
$dbPassword = "your_db_password"

# 添加并配置32位系统级ODBC数据源
Add-OdbcDsn -Name "DemoModel" `
    -DriverName "MySQL ODBC 5.2 Unicode Driver" `
    -DsnType "System" `
    -Platform '32-bit' `
    -SetPropertyValue @(
        "Server=$rdsEndpoint",
        "Uid=$dbUsername",
        "Pwd=$dbPassword",
        "Database=demo-v4",
        "AllowBigResultSets=1",
        "AutoReconnect=1",
        "AllowMultiQueries=1",
        "ReturnMatchingRows=1"
    )

核心修改与参数说明

  • 修复RDS端点配置:原脚本中Server=rds是字符串常量,改为引用变量Server=$rdsEndpoint,确保指向实际AWS RDS地址。
  • 替换身份验证方式:AWS RDS不支持Windows信任连接(Trusted_Connection=Yes),改用Uid(数据库用户名)和Pwd(数据库密码)进行身份验证。
  • 启用指定连接参数:
    • AllowBigResultSets=1:对应「Allow big result sets」选项
    • AutoReconnect=1:对应「Enable automatic reconnect」选项
    • AllowMultiQueries=1:对应「Allow multiple statements」选项
  • 配置游标/结果参数:
    • ReturnMatchingRows=1:对应「Return matched rows instead of affected rows」选项

重要注意事项

  1. 32位PowerShell环境:必须运行32位版本的PowerShell(路径:C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe),否则64位PowerShell无法识别32位ODBC驱动。
  2. 密码安全优化:避免明文存储密码,可改用Get-Credential获取安全凭证:
    $dbCred = Get-Credential -Message "输入数据库用户名和密码"
    # 在SetPropertyValue中替换为:
    "Uid=$($dbCred.UserName)",
    "Pwd=$($dbCred.GetNetworkCredential().Password)"
    
  3. 驱动存在性验证:可通过Get-OdbcDriver -Platform '32-bit'命令,确认32位「MySQL ODBC 5.2 Unicode Driver」已正确安装。

内容的提问来源于stack exchange,提问作者Lakshminarayanan S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 18:31:02