1、 docker search mysql

2、docker pull mysql/mysql-serer

3、mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf

data目录将映射为mysql容器配置的数据文件存放路径

logs目录将映射为mysql容器的日志目录

conf目录里的配置文件将映射为mysql容器的配置文件

4、docker run -d -p 13306:3306

  --name mysql

  --privileged=true

  -v /home/happy/mysql/data:/var/lib/mysql -v /home/happy/mysql/conf.d:/etc/mysql/conf.d -v /home/happy/mysql/logs:/var/log/mysql

  -e MYSQL_USER = "happy"

  -e MYSQL_PASSWORD="Xxh!123"

   -e MYSQL_ROOT_PASSWORD=password

   mysql

  --character-set-server=utf8 --collation-server=utf8_general_ci

  • -p 123456:3306:将容器的3306端口映射到主机的12356端口

  • -v /home/happy/mysql/conf.d:/etc/mysql/conf.d:将主机当前目录下的conf/my.cnf挂载到容器的/etc/mysql/my.cnf

  • -v /home/happy/mysql/logs:/var/log/mysql:将主机当前目录下的logs目录挂载到容器的/logs

  • -v /home/happy/mysql/datadir:/var/lib/mysql :将主机当前目录下的datadir目录挂载到容器的//var/lib/mysql

  • -e MYSQL_ROOT_PASSWORD=123456:初始化root用户的密码

  • 在docker run中加入 --privileged=true  给容器加上特定权限 。否则会chown: changing ownership of ‘/var/lib/mysql/....‘: Permission denied (http://www.cnblogs.com/performancetest/p/5719420.html

  • -d: 后台运行容器,并返回容器ID

#进入mysql的终端, 如果提示客户端连接caching-sha2-password问题, 按如下修改
 
5、docker exec -it container-name mysql -uroot -p123456

  1. use mysql;  #使用mysql库
  2. ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;     #修改加密规则
  3. ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  1. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NewPassword';
  2. ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'NewPassword';
  1. #更新密码(mysql_native_password模式)
  2. update user set host='%' where user = 'root';  #设置root在任意ip可以使用(支持远程连接)
  3. FLUSH PRIVILEGES;   #刷新权限
  4. quit; #退出控制台


CREATE USER 'name'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'name'@'localhost';

6、 docker exec -it container-id bash //进入container 内命令行模式

Docker 安装 MySQL的更多相关文章

  1. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  2. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  3. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  4. 解决Docker安装MySQL不区分大小写问题

    Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...

  5. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  6. SpringBoot Docker Mysql安装,Docker安装Mysql

    SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  7. docker 安装mysql mongo

    Docker安装Mysql 1.拉取镜像 docker pull mysql/mysql-server 2.运行mysql docker run -d -p : --name [Name] [Imag ...

  8. Docker安装MySQL忽略大小写问题的问题

    原文:Docker安装MySQL忽略大小写问题的问题 连接MySQL: 查看当前mysql的大小写敏感配置show global variables like '%lower_case%';+---- ...

  9. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  10. Docker 安装mysql、oracle

    来源:唐山网站优化 Docker 安装mysql.oracle 使用ssh工具登录docker docker 的ip一般默认为192.168.99.100可以通过安装docker-machine之后, ...

随机推荐

  1. leetcode — unique-binary-search-trees

    /** * Source : https://oj.leetcode.com/problems/unique-binary-search-trees/ * * * Given n, how many ...

  2. [整理+原创]ubuntu Thunderbird Mail设置自动提醒

    开机启动的设置方法 // 在终端输入 gnome-session-properties 然后添加thunderbird为启动项 方法1——自动提醒 下载插件:Thunderbird Mail客户端菜单 ...

  3. JDK源码分析(7)之 Reference 框架概览

    对于Reference类大家可能会比较陌生,平时用的也比较少,对他的印象可能仅停在面试的时候查看引用相关的知识点:但在仔细查看源码后发现Reference还是非常实用的,平时我们使用的类都是强引用的, ...

  4. Docker镜像构建的两种方式(六)--技术流ken

    镜像构建介绍 在什么情况下我们需要自己构建镜像那? (1)当我们找不到现有的镜像,比如自己开发的应用程序 (2)需要在镜像中加入特定的功能 docker构建镜像有两种方式:docker commit命 ...

  5. webpack4.0各个击破(9)—— karma篇

    webpack作为前端最火的构建工具,是前端自动化工具链最重要的部分,使用门槛较高.本系列是笔者自己的学习记录,比较基础,希望通过问题 + 解决方式的模式,以前端构建中遇到的具体需求为出发点,学习we ...

  6. Smobiler 4.4 更新预告 Part 1(Smobiler能让你在Visual Studio上开发APP)

    在4.4版本中,大家对产品优化的一些建议和意见进行了相应的优化和修复,同时,还新增了一些令人激动的功能和插件. 下面先为大家介绍4.4版本中Smobiler的优化和修复: 优化 1, PageView ...

  7. [PHP] 频率限制类

    比如要实现 单个ip限制60秒1次单个关键字,比如手机号,限制60秒1次,3600秒10次 <?php class Sina_Mail_WebAntispam { const PREFIX_WH ...

  8. Java开发笔记(五十四)内部类和嵌套类

    通常情况下,一个Java代码文件只定义一个类,即使两个类是父类与子类的关系,也要把它们拆成两个代码文件分别定义.可是有些事物相互之间密切联系,又不同于父子类的继承关系,比如一棵树会开很多花朵,这些花儿 ...

  9. java学习笔记 线程的实现与同步

    2019.4.2 线程实现的两种方式 继承线程,复写其中的run方法 实现runnable接口,复写run方法 使用: MyThread target = new MyThread(); new Th ...

  10. java重写与重载的区别

    override(重写) :即把改方法重新写一次,内部逻辑可变,外壳不变,核心重写 1. 方法名.参数.返回值相同. 2. 子类方法不能缩小父类方法的访问权限. 3. 子类方法不能抛出比父类方法更多的 ...