• docker安装mysql8


    一、下载镜像

    # 查找镜像
    docker search mysql  # mysql
    
    # 下载镜像 https://hub.docker.com/ docker 官方搜索查看有哪些 mysql 镜像版本
    docker pull mysql:8.0.27
    
    # 查看已下载镜像
    docker images

    二、创建相关目录

    宿主机创建相关

    mkdir -p /home/docker/mysql/mysql8/conf      # 配置文件目录
    mkdir -p /home/docker/mysql/mysql8/data      # 数据目录
    mkdir -p /home/docker/mysql/mysql8/log       # 日志目录

    宿主机新增配置文件

    # 配置文件
    vim /home/docker/mysql/mysql8/conf/my.cnf

    配置文件内容

    # Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
    #
    # This program is free software; you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation; version 2 of the License.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
    
    #
    # The MySQL  Server configuration file.
    #
    # For explanations see
    # http://dev.mysql.com/doc/mysql/en/server-system-variables.html
    [client]
    default-character-set = utf8mb4
    
    [mysqld]
    pid-file        = /var/run/mysqld/mysqld.pid
    socket          = /var/run/mysqld/mysqld.sock
    datadir         = /var/lib/mysql
    
    # 限制导入导出文件目录的, 可自行搜索, 我暂时没有用到过, 下面这样表示不限制目录
    secure-file-priv =
    
    character_set_server = utf8mb4
    collation_server = utf8mb4_bin
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    
    # Custom config should go here
    !includedir /etc/mysql/conf.d/
    
    # 这里是配置加密方式的
    # 启动警告 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead.
    default_authentication_plugin= mysql_native_password

    三、创建并运行容器

    docker run \
        -p 3306:3306 \
        -e MYSQL_ROOT_PASSWORD=root \
        -v /home/docker/mysql/mysql8/data:/var/lib/mysql:rw \
        -v /home/docker/mysql/mysql8/log:/var/log/mysql:rw \
        -v /home/docker/mysql/mysql8/conf/my.cnf:/etc/mysql/my.cnf:rw \
        -v /etc/localtime:/etc/localtime:ro \
        --name mysql801 \
        --restart=always \
        -d mysql:8.0.27
    
    
    -p 3306:3306                                                    : 端口映射, 前宿主机后容器
    -e MYSQL_ROOT_PASSWORD=root                                     : 指定数据库root用户的密码
    -v /home/docker/mysql/mysql8/data:/var/lib/mysql:rw             : 容器目录与宿主机目录的映射/挂载, 后面是指定读写权限
    -v /home/docker/mysql/mysql8/log:/var/log/mysql:rw              : 同上
    -v /home/docker/mysql/mysql8/conf/my.cnf:/etc/mysql/my.cnf:rw   : 同上
    -v /etc/localtime:/etc/localtime:ro                             : 时区文件
    --name mysql8                                                   : 容器名称
    --restart=always                                                : docker重启时容器也重启, 类似开机启动的意思
    -d mysql:8.0.27       

    查看日志

    docker logs 容器ID/容器名称
    docker logs mysql801

    登录容器

    docker exec -it 容器ID/容器名称 /bin/bash
    docker exec -it mysql801 /bin/bash
  • 相关阅读:
    算法与数据结构(1):基础部分——以插入排序为例
    软件工程结对作业
    软件工程第1次作业
    软件工程第0次作业
    python爬虫随笔(2)—启动爬虫与xpath
    python爬虫随笔-scrapy框架(1)——scrapy框架的安装和结构介绍
    【面试题】String类、包装类的不可变性
    【面试题】Java类初始化和实例初始化的顺序
    【面试题】Java单例设计模式-饿汉式枚举(enum)单例
    【面试题】从JVM的角度去理解i++和++i
  • 原文地址:https://www.cnblogs.com/chenxingyang/p/15780184.html
Copyright © 2020-2023  润新知