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

Amazon Linux 2023环境下AWS CodeBuild中MySQL CLI安装及执行问题求助

解决AWS CodeBuild(Amazon Linux 2023)中安装MySQL CLI并插入数据的问题

错误原因分析

你遇到的Can not load RPM file错误,核心原因是下载的RPM文件名和安装命令指定的文件名不匹配:你实际下载的是mysql80-community-release-el9-3.noarch.rpm,但安装时写的是mysql80-community-release-el9-1.noarch.rpm,系统找不到对应文件自然报错。

另外,Amazon Linux 2023基于EL9,安装MySQL客户端需要先配置正确的社区仓库,再安装客户端包,以下是完整可行的步骤:

修正后的buildspec.yaml配置

在install阶段添加MySQL CLI的安装命令,完整示例如下:

phases:
  install:
    commands:
      # 下载匹配EL9的MySQL社区仓库配置包
      - wget https://repo.mysql.com/mysql80-community-release-el9-3.noarch.rpm
      # 直接安装本地下载的仓库配置包
      - sudo rpm -ivh mysql80-community-release-el9-3.noarch.rpm
      # 仅安装MySQL客户端(无需服务器,节省资源)
      - sudo yum install -y mysql-community-client
  build:
    commands:
      - echo "Saving value to MySQL RDS"
      # 执行插入命令(注意-p和密码之间无空格,避免交互式输入)
      - mysql -h $DB_HOST -u $DB_USER -p$DB_PASSWORD -D $DB_NAME -e "INSERT INTO versionReact (version) VALUES ('$REACT_APP_VERSION');"

关键注意事项

  1. 密码参数格式:mysql命令的-p和密码之间不能有空格,否则会触发交互式密码输入,导致构建进程卡住。
  2. 最小化安装:仅安装mysql-community-client包即可满足CLI操作需求,无需安装MySQL服务器,减少安装时间和资源占用。
  3. 权限与变量验证:确保CodeBuild项目已配置DB_HOST、DB_USER、DB_PASSWORD、DB_NAME、REACT_APP_VERSION环境变量,同时RDS安全组需开放CodeBuild实例的IP访问3306端口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 02:57:43