Skip to content

构建环境:docker、docker-compose

配置文件

vim /docker/docker-compose.yml

version: "3.9"
services:
  mysql:
    image: mysql:5.6.50
    container_name: mysql
    ports:
      - "3307:3306"
    environment:
      MYSQL_DATABASE: elock
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_ROOT_HOST: '%'
      TZ: Asia/Shanghai
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime
      - ./mysql/conf:/etc/mysql/conf.d
      - ./mysql/data:/var/lib/mysql
      - ./mysql/log:/var/log
    deploy:
      resources:
        limits:
          memory: 2048M
networks:
  default:
    external:
      name: mynetwork
version: "3.9"
services:
  mysql:
    image: mysql:5.6.50
    container_name: mysql
    ports:
      - "3307:3306"
    environment:
      MYSQL_DATABASE: elock
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_ROOT_HOST: '%'
      TZ: Asia/Shanghai
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime
      - ./mysql/conf:/etc/mysql/conf.d
      - ./mysql/data:/var/lib/mysql
      - ./mysql/log:/var/log
    deploy:
      resources:
        limits:
          memory: 2048M
networks:
  default:
    external:
      name: mynetwork

配置my.conf

vim /docker/mysql/conf/my.cnf

[mysqld]
user=mysql
datadir=/var/lib/mysql
character-set-server = utf8
lower_case_table_names = 1
log-error=/var/log/mysql.log
innodb_log_file_size = 256M
symbolic-links=0
socket=/var/lib/mysql/mysql.sock
port=3306
wait_timeout = 31536000
interactive_timeout = 31536000
max_connections = 1000
key_buffer_size = 3840M
thread_concurrency = 20
innodb_buffer_pool_size = 1024M
innodb_log_buffer_size = 20M
query_cache_size = 256M
read_buffer_size = 32M
sort_buffer_size = 32M
read_rnd_buffer_size = 32M
thread_cache_size = 64
join_buffer_size = 32M
tmp_table_size = 256M
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

[mysqld_safe] 
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysqld]
user=mysql
datadir=/var/lib/mysql
character-set-server = utf8
lower_case_table_names = 1
log-error=/var/log/mysql.log
innodb_log_file_size = 256M
symbolic-links=0
socket=/var/lib/mysql/mysql.sock
port=3306
wait_timeout = 31536000
interactive_timeout = 31536000
max_connections = 1000
key_buffer_size = 3840M
thread_concurrency = 20
innodb_buffer_pool_size = 1024M
innodb_log_buffer_size = 20M
query_cache_size = 256M
read_buffer_size = 32M
sort_buffer_size = 32M
read_rnd_buffer_size = 32M
thread_cache_size = 64
join_buffer_size = 32M
tmp_table_size = 256M
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

[mysqld_safe] 
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

运行

docker network create mynetwork
docker up  -d
docker network create mynetwork
docker up  -d