zoukankan      html  css  js  c++  java
  • mysql安装(docker)

    mkdir /opt/mysql

    vim /opt/mysql/Dockerfile

    5.7

    FROM mysql:5.7.26
    EXPOSE 3306

    8.0

    FROM mysql:latest
    EXPOSE 3306

    创建文件夹

    mkdir /opt/mysql/var/lib/mysql -p

    vim /opt/mysql/docker-compose.yml

    5.7

    version: '3.6'
    services:
      mysql: 
        image: v-mysql:5.7
        container_name: mysql
        network_mode: "host"
        build: 
          context: .
          dockerfile: Dockerfile
        environment: 
    MYSQL_ROOT_HOST: '%' MYSQL_ROOT_PASSWORD:
    "root" MYSQL_USER: 'test' MYSQL_PASS: '123456' MYSQL_ALLOW_EMPTY_PASSWORD: "no" restart: always command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 --max_allowed_packet=128M --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO" volumes: - "./var/lib/mysql:/var/lib/mysql" - "./etc/my.cnf:/etc/my.cnf" - "./docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/" ports: - "3306:3306"

    不用Dockerfile时

    version: '3.6'
    services:
      mysql: 
        image: mysql:5.7.26
        container_name: mysql
        network_mode: "host"
        environment: 
    MYSQL_ROOT_HOST: '%' MYSQL_ROOT_PASSWORD:
    "root" MYSQL_USER: 'test' MYSQL_PASS: '123456' MYSQL_ALLOW_EMPTY_PASSWORD: "no" restart: always command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 --max_allowed_packet=128M --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO" volumes: - "./var/lib/mysql:/var/lib/mysql" - "./etc/my.cnf:/etc/my.cnf" - "./docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/" ports: - "3306:3306"

    8.0

    version: '3.6'
    services:
      mysql: 
        image: v-mysql:8.0
        container_name: mysql
        network_mode: "host"
        build: 
          context: .
          dockerfile: Dockerfile
        environment: 
          MYSQL_ROOT_PASSWORD: "root"
          MYSQL_USER: 'test'
          MYSQL_PASS: '123456'
          MYSQL_ALLOW_EMPTY_PASSWORD: "no"
        restart: always
        command: 
          --default-authentication-plugin=mysql_native_password
          --character-set-server=utf8mb4
          --collation-server=utf8mb4_general_ci
          --explicit_defaults_for_timestamp=true
          --lower_case_table_names=1
        volumes: 
          - "./var/lib/mysql:/var/lib/mysql"
          - "./etc/my.cnf:/etc/my.cnf"
          - "./docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/"
        ports:
          - "3306:3306"

    mysql配置文件

    mkdir /opt/mysql/etc
    vim /opt/mysql/etc/my.cnf

    [mysqld]
    user=mysql
    default-storage-engine=INNODB
    character-set-server=utf8
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8

    /docker-entrypoint-initdb.d/init.sql
    sql脚本(略)

    build和启动
    cd /opt/mysql
    docker-compose build
    docker-compose up -d
    docker-compose down
    docker-compose restart

    进入容器
    docker exec -it mysql /bin/bash

  • 相关阅读:
    01快速入门-03-条件判断和循环
    01快速入门-02-数组和对象
    01快速入门-01-基本语法和数据类型
    《Head First 设计模式》[01] 策略模式
    爬山算法与模拟退火算法的分析与实现
    Java虚拟机(二) —— 运行时数据区的OOM异常
    CoreJava(一)—— Java迭代语句
    Java虚拟机(二) —— 垃圾回收算法与垃圾回收器
    算法学习 —— 使用Linux C++练习OJ
    Java虚拟机(一) —— 运行时数据区
  • 原文地址:https://www.cnblogs.com/wintersoft/p/11083701.html
Copyright © 2011-2022 走看看