如何在laradock中将数据库名称从默认更改为自定义?

时间:2018-06-21 02:01:22

标签: php docker web laradock

使用默认名称时,一切都很好。但是,当我更改数据库名称时,无法迁移。 这是我来自laradock / .env的 mysql设置

### MYSQL #################################################

MYSQL_VERSION=5.7
MYSQL_DATABASE=dafault
MYSQL_USER=root
MYSQL_PASSWORD=root
MYSQL_PORT=3306
MYSQL_ROOT_PASSWORD=root
MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d

这是我在项目文件夹中的.env 中的 mysql设置

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=default
DB_USERNAME=root
DB_PASSWORD=root

这是我的 docker-compose.yml 设置

## MySQL ################################################
    mysql:
      build:
        context: ./mysql
        args:
          - MYSQL_VERSION=${MYSQL_VERSION}
      environment:
        - MYSQL_DATABASE=${MYSQL_DATABASE}
        - MYSQL_USER=${MYSQL_USER}
        - MYSQL_PASSWORD=${MYSQL_PASSWORD}
        - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
        - TZ=${WORKSPACE_TIMEZONE}
      volumes:
        - ${DATA_PATH_HOST}/mysql:/var/lib/mysql
        - ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
      ports:
        - "${MYSQL_PORT}:3306"
      networks:
        - backend

如果我更改了默认名称

  

php artisan迁移

不起作用。你能告诉我正确的方法是什么吗?

1 个答案:

答案 0 :(得分:0)

更改数据库名称后迁移时会收到什么错误消息?

无论如何,任何.env更改后,您必须重建您的mysql容器,这可以通过以下命令完成:

docker-compose build --no-cache mysql