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

Spring Boot bootRun+Docker Compose下Liquibase无法连接MySQL的问题

集成Liquibase、R2DBC与MySQL时出现MySQL权限错误

我在给一个非简单应用集成Liquibase、R2DBC与MySQL时,添加完必要配置后遇到了以下权限错误:

Caused by: java.sql.SQLException: Access denied for user 'myuser'@'172.22.0.1' (using password: YES)

我用Docker Compose部署MySQL,对应的compose.yml配置如下:

services:
  mysql:
    image: 'mysql:latest'
    environment:
      - 'MYSQL_DATABASE=mydatabase'
      - 'MYSQL_PASSWORD=secret'
      - 'MYSQL_ROOT_PASSWORD=verysecret'
      - 'MYSQL_USER=myuser'
    ports:
      - '3306'

为了排查问题,我通过Spring Initializr创建了包含docker-compose、mysql、data-r2dbc、liquibase、webflux的最小可复现示例(MVCE),并配置了db.changelog-master.yaml:

databaseChangeLog:
  - changeSet:
      id: id
      author: author
      changes:
        - createTable:
            tableName: aTable
            columns:
              - column:
                  name: id
                  type: INT
                  constraints:
                    primaryKey: true
              - column:
                  name: value 
                  type: varchar(200)
                  constraints:
                    nullable: false

但这个最小示例并没有复现问题,日志显示已成功连接到容器化的MySQL:

Connected to myuser@172.23.0.1@jdbc:mysql://127.0.0.1:54863/mydatabase

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 00:46:06