美文网首页
Docker 部署mysql

Docker 部署mysql

作者: 虾米咬小米 | 来源:发表于2021-12-02 11:35 被阅读0次

    **SpringCloudAlibaba实战教程系列 **

    docker:官网 中文官网

    docker:镜像官网

    Docker 命令大全

    镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker pull redis:5.0.8)

    一、拉取mysql官方镜像,镜像更多解释

     1、登录docker 镜像官网搜索mysql,找到制定的版本拉去,这里使用mysql5.7.30
    

    docker pull mysql:5.7.30

    image

    2、查看docker的镜像

    docker images

    image

    二、根据镜像创建mysql容器

    1、 创建容器内在本地的映射文件夹

    mkdir -p /home/mysql/data /home/mysql/logs /home/mysql/conf
    

    2、初始化mysql的配置文件*.cnf,在/root/mysql/conf

    touch /home/mysql/conf/my.cnf

    3、创建docker容器并启动,将数据,日志,配置文件映射到本机

    创建容器返回container的id

    docker run -p 3307:3306 --name mysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/logs:/var/log/mysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.30
    

    -d: 后台运行容器,也可以使用镜像id

    -p 将容器的端口映射到本机的端口

    -v 将主机目录挂载到容器的目录

    -e 设置参数 MYSQL_ROOT_PASSWORD 指定登录密码

    image
     启动容器两种方式
    

    a、指定container的id

    docker start f46be2f4e1c7

    b、指定容器的名字

    docker start mysql

    4、查看服务是否启动

    docker ps

    image

    5、登录docker容器,登录mysql

    docker exec -it f46be2f4e1c7 /bin/bash

    f46be2f4e1c7 是上面docker ps中展示容器id

    image

    6、查看文件是否本持久化到本地

    ls /root/mysql/data/
    或者
    cd /root/mysql/data/
    ls

    image

    两种异常情况:

    1、 客户端登录链接异常(一种权限不足下面为解决方案、另一种修改密码版本不同方式不同)

    [ 复制代码

    ](javascript:void(0); "复制代码")

    登录docker容器(方式参考上方文档)后登录mysql

    mysql -uroot -proot

    修改登录者的权限

    GRANT ALL ON . TO 'root'@'%';

    刷新命令生效

    flush privileges;</pre>

    [ 复制代码

    ](javascript:void(0); "复制代码")

    2、JDBC启动报链接异常,链接异常是因为缺少必要的参数,根据以下参数进行检测即可。

    jdbc:mysql://127.0.0.1:3306/cloud_user?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf-8&autoReconnect=true

    //北京时间==东八区时间!=北京当地时间 serverTimezone=GMT%2B8
    //或者使用上海时间serverTimezone=Asia/Shanghai </pre>

    拓展文档:

    Docker(部署常见应用):Docker安装MySql完整教程、实操

    Docker版:Mysql分库分表MyCat实战

    Docker实现Mysql主从复制实战(一主一从、双主双从)

    docker部署mysql集群

    mysql 5.8以上版本有问题可以参考:

    mysql-管理命令【创建用户、授权、修改密码、删除用户和授权、忘记root密码】

    参考:

    https://www.cnblogs.com/niunafei/p/12803829.html

    相关文章

      网友评论

          本文标题:Docker 部署mysql

          本文链接:https://www.haomeiwen.com/subject/glyyxrtx.html