docker-compose安装mysql5.7

目录

docker-compose.yml:

yml文件同级目录新建文件夹mysql;

mysql文件夹下添加文件my.cnf:

启动容器


docker-compose.yml:

version: '3'
services:
  mysql:
    image: registry.cn-hangzhou.aliyuncs.com/zhengqing/mysql5.7  # 原镜像`mysql:5.7`
    container_name: mysql5.7                                        # 容器名为'mysql'
    restart: always                                              # 指定容器退出后的重启策略为始终重启
    volumes:                                                     # 数据卷挂载路径设置,将本机目录映射到容器目录
      - "./mysql/my.cnf:/etc/mysql/my.cnf"
      - "./mysql/data:/var/lib/mysql"
      - "./mysql/conf.d:/etc/mysql/conf.d"
    environment:                        # 设置环境变量,相当于docker run命令中的-e
      TZ: Asia/Shanghai
      LANG: en_US.UTF-8
      MYSQL_ROOT_PASSWORD: 123456         # 设置root用户密码
      MYSQL_DATABASE: demo              # 初始化的数据库名称
    ports:                              # 映射端口
      - "3305:3306"

yml文件同级目录新建文件夹mysql;

mysql文件夹下添加文件my.cnf:

[mysqld]
user=mysql                     # MySQL启动用户
default-storage-engine=INNODB  # 创建新表时将使用的默认存储引擎
character-set-server=utf8      # 设置mysql服务端默认字符集
pid-file        = /var/run/mysqld/mysqld.pid  # pid文件所在目录
socket          = /var/run/mysqld/mysqld.sock # 用于本地连接的socket套接字
datadir         = /var/lib/mysql              # 数据文件存放的目录
lower_case_table_names=1
#log-error      = /var/log/mysql/error.log
#bind-address   = 127.0.0.1                   # MySQL绑定IP
expire_logs_days=7                            # 定义清除过期日志的时间(这里设置为7天)
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION # 定义mysql应该支持的sql语法,数据校验等!

# 允许最大连接数
max_connections=200

# ================= ↓↓↓ mysql主从同步配置start ↓↓↓ =================
# 同一局域网内注意要唯一
#server-id=3310
# 开启二进制日志功能
#log-bin=mysql-bin
# ================= ↑↑↑ mysql主从同步配置end ↑↑↑ =================

[client]
default-character-set=utf8  # 设置mysql客户端默认字符集

启动容器

在yml文件同级目录打开命令行,执行命令:docker-compose up -d

你可能感兴趣的:(springboot,数据库,mysql)