zoukankan      html  css  js  c++  java
  • docker安装mysql5.7 数据挂载

    docker安装mysql5.7,并数据卷挂载到主机
    # docker 中下载 mysql
    docker pull mysql:5.7
    
    #启动
    docker run --name mysql3306 -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456! mysql:5.7
    数据挂载在容器中,万一容器崩了,数据也就丢失,将数据挂载在宿主机是好的办法。如下
    1.在宿主上创建数据文件夹用来保存
    创建3个层级关系文件夹,并创建conf.d存放配置文件
    mkdir /data
    mkdir /data/mysql
    mkdir /data/mysql/data
    mkdir /data/mysql/conf.d

    2.运行容器
    docker run --restart=always --privileged=true -v /data/mysql/data/:/var/lib/mysql -v /data/mysql/conf.d:/etc/mysql/conf.d --name mysqlv1 -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456! mysql:5.7
    3.参数说明:
    --restart=always #当Docker 重启时,容器会自动启动。
    --privileged=true #提升权限,拥有真正root权限,否则容器内root只是外部普通用户权限
    -v/data/mysql/data/:/var/lib/mysql #将主机的/data/mysql/data/映射到容器的/var/lib/mysql,mysql的数据目录
    -v /data/mysql/conf.d:/etc/mysql/conf.d #映射配置文件
    -e MYSQL_ROOT_PASSWORD=123456! #初始化数据库密码

     

      4.成功运行,容器的文件已经映射到宿主机

    
    
     
     
    
    
     
    #进入容器 
    docker exec -it mysql bash

    #登录mysql
    mysql -u root -p
    ALTER USER 'root'@'localhost' IDENTIFIED BY '
    123456!';

    #添加远程登录用户
    CREATE USER 'sa'@'%' IDENTIFIED WITH mysql_native_password BY '123456!';
    GRANT ALL PRIVILEGES ON *.* TO 'sa'@'%';

       #退出容器
     exit;
        exit;

  • 相关阅读:
    PAT Basic 1023 组个最小数 (20 分)
    PAT Advanced 1048 Find Coins (25 分)
    PAT Basic 1005 继续(3n+1)猜想 (25 分)
    PAT Advanced 1050 String Subtraction (20 分)
    PAT Advanced 1041 Be Unique (20 分)
    PAT Basic 1047 编程团体赛 (20 分)
    SpringSecurity整合SpringBoot
    给正在运行的Docker容器动态绑定卷组
    linux 中格式化json字符串
    docker/kubernetes国内源/镜像源解决方式
  • 原文地址:https://www.cnblogs.com/langhaoabcd/p/12021492.html
Copyright © 2011-2022 走看看