我一直在使用一个简单的MySQL表,使用Docker Compose,它只包含ID和NAME列。我试图更新最初创建表的myDb.sql文件,如下所示:
  
  CREATE TABLE `Person` (
  `id` int(11) NOT NULL,
  `firstName` varchar(50) NOT NULL, // updated this column
  `lastName` varchar(50) NOT NULL  // added this column
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  
   我将NAME列更新为firstName,并添加了lastName列。
  
  
   然后我运行Docker-COMPOSE STOP来停止Docker容器。
  
  
   然后通过运行Docker-COMPOSE UP重新启动Docker容器。我甚至试过重新启动DOCKER-Come。
  
  
  
  SELECT '', id, `firstName` From Person<br>Unknown column 'firstName' in 'field list'
  
   这让我相信我没有正确重启Docker编写。
  
  
  
  
   编辑
  
  
   这是我的docker-compose.yml文件:
  
  version: "3.7"
services:
www:
    build: .
    ports: 
        - "8001:80"
    volumes:
        - ./www:/var/www/html/
    links:
        - db
    networks:
        - default
db:
    image: mysql:5.7.13
    ports: 
        - "3306:3306"
    environment:
        MYSQL_DATABASE: myDb
        MYSQL_USER: user
        MYSQL_PASSWORD: test
        MYSQL_ROOT_PASSWORD: test
    volumes:
        - ./dump:/docker-entrypoint-initdb.d
        - persistent:/var/lib/mysql
    networks:
        - default
phpmyadmin:
    image: phpmyadmin/phpmyadmin
    links: 
        - db:db
    ports:
        - 8000:80
    environment:
        MYSQL_USER: user
        MYSQL_PASSWORD: test
        MYSQL_ROOT_PASSWORD: test
volumes:
    persistent:
  
  
  FROM php:7.0.30-apache 
RUN docker-php-ext-install mysqli