zoukankan      html  css  js  c++  java
  • CentOS 7 使用Docker搭建Mysql

    1. 前提是Docker已经安装好了

    没有安装的可以看这篇文章-->CentOS 7安装Docker

    2.拉取mysql镜像

    docker pull mysql
    docker images

     可以看到我们拉取的镜像

    [root@bogon ~]# docker images
    REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
    mynginx                     latest              1964089d63e6        11 days ago         108 MB
    docker.io/mysql             5.7                 98455b9624a9        2 weeks ago         372 MB
    docker.io/jenkins/jenkins   lts                 806f56c84444        8 weeks ago         703 MB
    docker.io/tomcat            latest              168588387c68        2 months ago        463 MB
    docker.io/redis             latest              0f55cf3661e9        2 months ago        95 MB
    docker.io/nginx             latest              f09fe80eb0e7        2 months ago        109 MB
    docker.io/mysql             latest              81f094a7e4cc        2 months ago        477 MB
    docker.io/zookeeper         latest              06b178591ab3        2 months ago        150 MB
    docker.io/php               5.6-fpm             3458979c7744        2 months ago        344 MB
    View Code

     宿主机创建几个文件夹用于容器文件挂载

    mkdir -p /home/service/mysql/data
    mkdir -p /home/service/mysql/conf/my.cnf

    然后运行命令启动mysql

    docker run -p 3306:3306 --name mysql 
    -v /home/service/mysql/data:/var/lib/mysql 
    -v /home/service/mysql/conf/my.cnf:/etc/my.cnf 
    -e MYSQL_ROOT_PASSWORD=123456
    -e TZ=Asia/Shanghai 
    -d mysql
    docker run -p 3306:3306 --name mysql -v /home/service/mysql/logs:/logs -v /home/service/mysql/data:/mysql_data -e MYSQL_ROOT_PASSWORD=123456 -d mysql


    命令讲解

    > -p 3306:3306:将容器的3306端口映射到主机的3306端口
    > -e MYSQL_ROOT_PASSWORD=123456:初始化root用户的密码
    > -e TZ=Asia/Shanghai 修改容器默认时区为上海 
    > -v =/mysqltest/config/my.cnf:/etc/my.cnf:映射配置文件
    > -v =/mysqltest/data:/var/lib/mysql:映射数据目录


    注意:不同mysql版本可能配置文件目录和路径不一样,mysql5.7的容器路径为 /etc/mysql/mysql.conf.d/mysqld.cnf。
    进入容器

    docker exec -it mysql bash

     登陆mysql

    mysql -uroot -p

     创建mysql用户

    CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
    GRANT ALL ON *.* TO 'admin'@'%';
    flush privileges;

    然后就可以使用admin用户登陆了,因为mysql8与mysql5.7授权有一些不一样,mysql必须先创建用户才能授权,不然会出错。

    作者:RoES —— 执着于理想,纯粹与当下

    出处:https://www.cnblogs.com/roes/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

  • 相关阅读:
    junit4的初级用法
    junit3和junit4的区别总结
    工作一年多了,我的技术博客终于开通了
    VC++ 运行库官方安装包
    文本编辑器通用快捷键
    gcc命令介绍
    MinGW安装与配置
    windows常见快捷键
    Notepad++配置C/C++
    Notepad++快捷键
  • 原文地址:https://www.cnblogs.com/roes/p/10709871.html
Copyright © 2011-2022 走看看