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

TFX 1.4.0配置MySQL 8.0为元数据库连接失败问题咨询

TFX 1.4.0连接MySQL 8.0元数据库失败解决方案

核心问题定位

你的配置存在两个已知的典型问题,同时MySQL 8.0默认配置和TFX 1.4.0依赖的ML Metadata库存在兼容性问题:

  1. 配置参数名错误:mysql_metadata_connection_config的身份参数是user而非username
  2. MySQL 8.0默认使用caching_sha2_password认证插件,TFX 1.4.0依赖的底层libmysqlclient不支持该加密方式
  3. 未提前创建ml_metadata数据库(TFX不会自动创建目标库)

修复步骤

1. 修正TFX元数据连接配置

将配置中的username参数改为user,按需添加SSL禁用参数避免证书校验问题:

from tfx import v1 as tfx

# [...] Add a simple CsvExampleGen

tfx.dsl.Pipeline(
   pipeline_name=pipeline_name,
   pipeline_root=pipeline_root,
   components=components,
   metadata_connection_config=tfx.orchestration.metadata
         .mysql_metadata_connection_config(
             host="127.0.0.1", 
             port=3306, 
             database="ml_metadata", 
             user="root",  # 此处修正参数名
             password="password",
             additional_connection_args="--ssl-mode=DISABLED"), # 按需添加,关闭SSL校验
  beam_pipeline_args=beam_pipeline_args,
  )

2. 调整MySQL 8.0配置

登录MySQL命令行执行以下操作:

  • 手动创建ML Metadata所需的数据库
CREATE DATABASE IF NOT EXISTS ml_metadata CHARACTER SET utf8;
  • 修改root用户的认证插件为旧版兼容模式,替换下方的password为你实际的数据库密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;

3. 安装系统依赖

确保你的运行环境安装了MySQL客户端开发库:

  • Debian/Ubuntu系统:
sudo apt install -y libmysqlclient-dev
  • RHEL/CentOS系统:
sudo yum install -y mysql-devel

完成以上步骤后重新运行流水线即可正常连接元数据库。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 15:45:05