Docker安装Mysql

1、在docker hub 上查看要下载的mysql镜像名称

dockerHub官网地址

在上方搜索栏里输入mysql

Docker安装Mysql

找到要拉取的镜像版本,在tag下找到版本

Docker安装Mysql

回到虚拟机界面,执行下面命令来拉取mysql镜像
不指定版本号,默认下载最新版本:

sudo docker pull mysql

指定版本号:

sudo docker pull mysql:5.7

Docker安装Mysql

2、镜像拉取完成后,用该镜像创建mysql实例,使用下面的命令来创建

sudo docker run \
 -p 3306:3306 --name mysql \
 -v /mydata/mysql/log:/var/log/mysql \
 -v /mydata/mysql/data:/var/lib/mysql \
 -v /mydata/mysql/conf:/etc/mysql \
 -e MYSQL_ROOT_PASSWORD=root \
 -d mysql:5.7

这里对上面的参数做下简单的介绍,如果不想了解这一块直接复制上面的命令执行即可:

配置端口映射:
-p 3306:3306 –name mysql
将容器的3306端口映射到主机的3306端口
配置mysql数据卷挂载
-v
1.-v /mydata/mysql/log:/var/log/mysql(日志文件挂载)
将容器中的日志文件夹挂载到主机对应的/mydata/mysql/log文件夹中
2.-v /mydata/mysql/data:/var/lib/mysql(数据文件挂载)
将容器中的数据文件夹挂载到主机对应的/mydata/mysql/data文件夹中
3.-v /mydata/mysql/conf:/etc/mysql(配置文件挂载)
将容器的配置文件夹挂载到主机对应的/mydata/mysql/conf文件夹中
注(这里所提的主机指的是当前的linux主机)
配置用户
-e MYSQL_ROOT_PASSWORD=root
设置初始化root用户的密码
指定镜像资源
-d mysql:5.7
-d:以后台方式运行实例
mysql:5.7:指定用这个镜像来创建运行实例

下面演示是用root用户来执行的命令,如果当前不是root用户,要在命令前加 sudo,以管理员方式来运行

Docker安装Mysql

创建成功后使用下面命令查看下创建好的mysql实例:

docker ps -a

Docker安装Mysql

用navicat测试下数据库是否启动成功:

用户名密码刚才创建docker时均设为了root

点击测试连接,显示测试成功,说明docker的mysql实例已经正常启动

Docker安装Mysql

2.1、进入容器

进入容器 bash/sh 都可以
docker exec -it 容器ID /bin/bash

例如mysql的容器ID:

docker ps

Docker安装Mysql

docker exec -it 981fe6284798 /bin/bash

Docker安装Mysql

2.2、配置my.cnf

在宿主机映射地址中配置my.cnf

cd /mydata/mysql/conf
vim my.cnf

my.cnf 基本默认内容

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

重启容器

docker stop 容器ID

docker start 容器ID

Original: https://www.cnblogs.com/aerfazhe/p/16405745.html
Author: 阿尔法哲
Title: Docker安装Mysql

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/586720/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • documentationPluginsBootstrapper

    springboot集成knife4j时报异常documentationPluginsBootstrapper实际是因为使用springboot2.6.0后,配置swagger,不…

    Java 2023年6月6日
    0100
  • java.sql.SQLSyntaxErrorException: Unknown database报错

    一般是jdbc链接的数据库名字写错了,检查数据库的名字。 Original: https://www.cnblogs.com/333czh/p/15622694.htmlAutho…

    Java 2023年6月9日
    079
  • SQLAlchemy完全入门

    最近想要学习 SQLAlchemy, 发现网上的中文文档大多是机翻的, 读起来特别变扭, 因此对照着最新的英文文档梳理了一遍, 写下来记录一下目前SQLAlchemy的版本为 1….

    Java 2023年6月7日
    089
  • springboot 测试类编译错误

    测试类需要和引导类处在同名的包下 posted @2022-05-16 13:34 HypoPine 阅读(17 ) 评论() 编辑 Original: https://www.c…

    Java 2023年6月15日
    096
  • 5.Hystrix简介

    Hystrix介绍 Hystrix是用于处理延迟和容错的开源库 Hystrix主要用于避免级联故障,提高系统弹性 Hystrix解决了由于扇出导致的”雪崩效应&#822…

    Java 2023年6月8日
    073
  • 会话跟踪技术

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月5日
    090
  • HTTPS的实现原理 —- 核心 SSL/TLS协议

    是在应用层和 传输层之间 添加的 安全层(SSL/TLS协议) 端口号:HTTP 默认是 80,HTTPS 默认是 443。 URL 前缀:HTTP 的 URL 前缀是 http:…

    Java 2023年6月6日
    061
  • == 和 equals 的区别是什么?

    ==:基本类型比较的是值的大小,引用类型比较的是内存地址,是不是同一个对象,equals:默认比较同一个对象的内容 == 和 equals 的区别是什么? == : 它的作用是判断…

    Java 2023年6月13日
    077
  • 创建并操作循环链表

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月5日
    073
  • LeetCode.1184-公交车站之间的距离(Distance Between Bus Stops)

    这是小川的第414次更新,第447篇原创 看题和准备 今天介绍的是 LeetCode算法题中 Easy级别的第 265题(顺位题号是 1184)。公交车有 n个从0到 n-1的车站…

    Java 2023年6月5日
    075
  • 常用开发工具的安装和使用

    常用开发工具的安装和使用 IntelliJ IDEA的安装和使用 安装教程 1.教育优惠 JetBrains开发的众多开发工具提供教育优惠,可以方便在校学生使用。通过学校提供的教育…

    Java 2023年6月8日
    087
  • /ConcurrencyThreadGroup,非预先启动线程

    1.文档 https://jmeter-plugins.org/wiki/ConcurrencyThreadGroup/ 优点:逐步启动线程减少内存占用,jmeter默认线程组是先…

    Java 2023年5月29日
    077
  • rocketmq延时消息

    rocketmq提供一种延时消息的解决方案,就是在特定的时间到了,消息才会被投递出去供 consumer消费。 总体来是简单的场景是满足了,但是需要注意的是延时的时间是需要按照默认…

    Java 2023年6月16日
    096
  • Guava 内存缓存的使用

    一、概述 guava⽬前有三种刷新本地缓存的机制: expireAfterAccess:当缓存项在指定的时间段内没有被读或写就会被回收。 expireAfterWrite:当缓存项…

    Java 2023年6月7日
    081
  • mybatis竟然报”Invalid value for getInt()”

    背景 场景 初探 再探 结局 背景 使用 mybatis遇到一个非常奇葩的问题,错误如下: Cause: org.apache.ibatis.executor.result.Res…

    Java 2023年6月8日
    0117
  • 使用系统参数表,提升系统的灵活性

    1、使用系统参数表的好处 ​ Spring Boot项目中常有一些相对稳定的参数设置项,其作用范围是系统级的或模块级的,这些参数称为系统参数。这些变量以参数形式进行配置,从而提高变…

    Java 2023年6月14日
    094
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球