一、创建目录

  1. # 1、先创建 mysql8 的目录,并进入该目录
  2. cd /usr/local/docker/mysql8
  3. # 2、创建挂载目录
  4. mkdir -p /usr/local/docker/mysql8/{log,data,conf,mysql-files}
  5. # 2、创建 docker-compose.yml
  6. vi docker-compose.yml

二、创建 docker-compose.yml

  1. vi docker-compose.yml

docker-compose.yml

  1. version: '3.1'
  2. services:
  3. mysql:
  4. container_name: mysql8
  5. image: mysql:8.0.25
  6. restart: always
  7. ports:
  8. - 3306:3306
  9. command:
  10. --default-authentication-plugin=mysql_native_password
  11. --character-set-server=utf8mb4
  12. --collation-server=utf8mb4_general_ci
  13. environment:
  14. MYSQL_ROOT_PASSWORD: 123456
  15. volumes:
  16. - ./log:/var/log/mysql
  17. - ./data:/var/lib/mysql
  18. - ./conf:/etc/mysql
  19. - ./mysql-files:/var/lib/mysql-files

三、执行 docker-compose

  1. # 在 mysql8 目录执行
  2. docker-compose up -d

my.cnf 配置

  1. # 3、创建 my.cnf
  2. vi my.cnf

my.cnf

  1. [mysqld]
  2. pid-file = /var/run/mysqld/mysqld.pid
  3. socket = /var/run/mysqld/mysqld.sock
  4. datadir = /var/lib/mysql
  5. source-file-priv= NULL
  6. symbolic-links=0
  7. lower_case_table_names=1
  8. max_connections=3000
  9. skip-log-bin
  10. !includedir /etc/mysql/conf.d/