MySQL Docker Compose mysql 导入 .sql

MySQL Docker Compose mysql 导入 .sql

在使用MySQL进行开发或运维时,经常需要导入.sql文件进行初始化或更新操作。使用Docker Compose来快速搭建MySQL环境,并导入.sql文件可以极大提高工作效率。

阅读更多:MySQL 教程

安装Docker

首先需要安装Docker,以便能够部署MySQL的Docker镜像。请按照官方文档进行安装:https://docs.docker.com/engine/install/

编写Docker Compose文件

Docker Compose使用YAML格式,可以通过编写一个docker-compose.yml文件来定义MySQL容器的配置信息。

示例:

version: '3'
services:
  db:
    image: mysql:8.0.26
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: testdb
    ports:
      - 3306:3306
    volumes:
      - ./mysql/scripts:/docker-entrypoint-initdb.d
      - ./mysql/data:/var/lib/mysql

上述示例定义了一个MySQL容器,并将本地的./mysql/scripts目录挂载到容器的/docker-entrypoint-initdb.d目录,用于存放需要导入的.sql文件;将./mysql/data目录挂载到容器的/var/lib/mysql目录,用于数据持久化存储。

导入.sql文件

将需要导入的.sql文件复制到./mysql/scripts目录下,Docker Compose将会在MySQL容器启动后自动执行该目录下所有以.sql结尾的文件。

示例:

我们可以在./mysql/scripts目录下放置一个db.sql文件,其中包含如下SQL语句:

CREATE TABLE `users` (
  `id` INT(11) NOT NULL,
  `name` VARCHAR(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `users` (`id`, `name`) VALUES
(1, 'Alice'),
(2, 'Bob'),
(3, 'Charlie');

启动MySQL容器:

docker-compose up -d

Docker Compose会自动执行./mysql/scripts目录下的db.sql文件,并将其中的数据导入到MySQL容器中,你可以使用MySQL客户端进行查询验证。

总结

使用Docker Compose来搭建MySQL环境,并导入.sql文件可以大大提高工作效率,同时还能避免环境配置不一致的问题。记得将数据持久化,确保数据的安全性。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程