无法创建到数据库的 Liquibase 连接

问题描述 投票:0回答:1

Liquibase 无法连接到数据库,当我针对数据库运行 liquibase 时,出现以下错误:

liquibase_1  | Starting Liquibase at 21:40:22 (version 4.23.1 #12042 built at 2023-08-10 13:48+0000)
liquibase_1  | Liquibase Version: 4.23.1
liquibase_1  | Liquibase Open Source 4.23.1 by Liquibase
liquibase_1  | 
liquibase_1  | Unexpected error running Liquibase: Connection could not be created to jdbc:mysql://mysql_db:3307/patshala with driver com.mysql.cj.jdbc.Driver.  Communications link failure
liquibase_1  | 
liquibase_1  | The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
liquibase_1  |   - Caused by: Connection refused

下面是我的 docker compose 文件,我这里缺少什么吗?

version: '3.8'

services:
  mysql_db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: patshala
      MYSQL_USER: mysql
      MYSQL_PASSWORD: password
    volumes:
      - ./db:/docker-entrypoint-initdb.d/
    ports:
      - "3307:3306"
    networks:
      - app-network

  liquibase:
    image: liquibase/liquibase:latest
    command: ["--url=jdbc:mysql://mysql_db:3307/patshala", "--username=mysql", "--password=password", "--changeLogFile=/db/changelog/db.changelog.xml", "update"]
    volumes:
      - ./db:/liquibase/changelog
      - ./mysql-connector-j-8.1.0.jar:/liquibase/lib/mysql-connector-j-8.1.0.jar
    depends_on:
      - mysql_db
    networks:
      - app-network


networks:
  app-network:
    driver: bridge
mysql docker-compose liquibase
1个回答
0
投票
volumes:
  - ./db:/liquibase/changelog
  - ./mysql-connector-j-8.1.0.jar:/liquibase/lib/mysql-connector-j-8.1.0.jar

根据Liquibase的最新文档,您需要创建一个Dockerfile才能将MySQL驱动程序安装到Liquibase。

参考:【MySQL 授权限制】1

© www.soinside.com 2019 - 2024. All rights reserved.