Docker + mysql 初始化脚本不执行

项目docker-compose.yml部分如下

db:
    image: mysql:5.7
    container_name: db
    environment: 
        - "MYSQL_ROOT_PASSWORD=123"
        - "MYSQL_DATABASE=test"
        - "TZ=Asia/Shanghai"
    restart: always
    volumes:
        - /data:/var/lib/mysql
        - ./init.sql:/docker-entrypoint-initdb.d/init_db.sql
    ...

发现不能初始化init_db.sql

解决方法:

SQL files in this folder will be loaded only if the DB's data directory is empty (the very first run of db service). (i.e) in your case /data folder should be empty.

我将/data内容删除了,docker-compose up -d 可以了。

参考地址:
https://stackoverflow.com/questions/54479941/how-to-init-mysql-database-in-docker-compose

posted @ 2021-08-01 18:37  学习记录13  阅读(598)  评论(0)    收藏  举报