zoukankan      html  css  js  c++  java
  • Docker的MySQL镜像, 实行数据,配置信息,日志持久化

    Docker的MySQL8镜像, 实行数据持久化

    使用Docker的MySQL8.0.17实例化一个容器之后需要对其进行数据持久化操作, 使用

    docker docker run -p 7797:3306 --name mysql
    -v /usr/local/docker/mysqlDocker/conf:/etc/mysql
    -v /usr/local/docker/mysqlDocker/logs:/var/log
    -v /usr/local/docker/mysqlDocker/data:/var/lib/mysql
    -e MYSQL_ROOT_PASSWORD=q.123456
    -d mysql:8.0.17

    但是容器启动总是失败, 最后发现可能是因为MySQL8的配置文件的问题, 将配置文件的持久化 去掉 之后可以成功启动. 但是配置文件的持久化还是需要做的, 这个时候用已经成功地MySQL容器 将其中的配置文件拷贝出来.

    拷贝mysql容器中的配置文件到 /usr/local/docker/mysqlDocker/conf 下.

    docker docker cp mysql:/etc/mysql . mv mysql/ conf/

    然后执行 docker 实例化MySQL容器的命令, 这样数据持久化就不会出现问题了

    ```
    version: '3.1'
    services:
      web:
        restart: always
        image: tomcat:9.0.22-jdk12-openjdk-oracle
        container_name: webContainer
        ports: 
          - 8080:8080
        volumes:
          - /usr/local/docker/wdlshop/ROOT:/usr/local/wdlshop/webapps/ROOT
    
    
      mysql:
        image: mysql
        restart: always
        container_name: mysqlContainer
        environment:
          MYSQL_ROOT_PASSWORD: q.123456
        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
        ports:
          - 3306:3306
        volumes:
          - ./data:/var/lib/mysql
    ```
  • 相关阅读:
    CSU 1333 Funny Car Racing
    FZU 2195 检查站点
    FZU 2193 So Hard
    ZOJ 1655 FZU 1125 Transport Goods
    zoj 2750 Idiomatic Phrases Game
    hdu 1874 畅通工程续
    hdu 2489 Minimal Ratio Tree
    hdu 3398 String
    洛谷 P2158 [SDOI2008]仪仗队 解题报告
    POJ 1958 Strange Towers of Hanoi 解题报告
  • 原文地址:https://www.cnblogs.com/A-FM/p/5455785.html
Copyright © 2011-2022 走看看