返回顶部
首页 > 资讯 > 数据库 >Docker部署MySQL并实现客户端连接
  • 542
分享到

Docker部署MySQL并实现客户端连接

2024-04-02 19:04:59 542人浏览 八月长安
摘要

准备工作 在Docker内部署任何应用,都需要先下载对应的镜像;下载镜像之前,需要先搜索镜像来确认该镜像是否存在: docker search Mysql 从列表可以看到,dock

准备工作

Docker内部署任何应用,都需要先下载对应的镜像;下载镜像之前,需要先搜索镜像来确认该镜像是否存在:

docker search Mysql

从列表可以看到,docker已经有了mysql的镜像,名称是“mysql”,接下来下载镜像:

docker pull mysql

下载完成后,查看一下本地镜像:

如果在列表中看到mysql,镜像下载就已经成功了。

容器设置

在docker中,真正运行的是容器,镜像在我理解中是一种环境。我们在指定的镜像中运行某个容器,然后编辑和配置这个容器,从而达到想要的效果。使用以下命令运行一个mysql容器:

docker run -d -it -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWord=123456 mysql

解释一下

  • -d:代表后台运行,并返回容器的ID;
  • -it:是一个组合命令,可以使容器在运行时不会阻塞当前操作界面。(另一种写法是 -i -t );
  • -p 3306:3306:将宿主机上的端口映射到容器对应端口;
  • -e MYSQL_ROOT_PASSWORD=123456:设置环境变量,此处是设置root用户密码为123456;
  • --name mysql01:自定义容器名称为mysql01;

最后的mysql:镜像的名称。

这行命令的结果是在mysql镜像中运行了一个名为mysql01的容器,并且root用户的密码是123456。接下来看一下容器有没有正常运行:

看到STATUS那一栏是Up开头就代表启动成功了。

Docker下的Mysql操作

容器创建好以后,可以使用exec命令进入容器去操作:

docker exec -it mysql01 bash

进入容器以后,使用刚才设置好的账户密码登陆mysql:

登陆成功后,就可以按照mysql的命令去操作表库了。因为mysql和dockers容器的退出指令都是exit,所以如果要回到根目录,先输入exit退出mysql,再输入exit退出容器。

客户端连接Docker容器下的Mysql

上面已经实现了docker内操作mysql,但全命令行的操作很费时,这显然不符合高效开发同学们的要求,所以现在有个简单的方法,就是使用客户端连接docker容器下的mysql。

我们知道docker是运行在虚拟机环境下的,虚拟机有单独的IP地址和端口,只要找到docker所在虚拟机的IP即可使用客户端连接到docker容器下的mysql。但是直接去连肯定会失败,为什么?两个原因:

  • 1、因为docker容器也拥有独立的端口和IP,所以直接访问docker所在虚拟机的IP是访问不到的,因此需要将docker容器的端口映射到docker所在主机的端口上。
  • 2、因为mysql默认不允许远程连接。

端口映射在前面已经做好了,所以现在只需要修改mysql允许所有连接即可。登陆docker容器的mysql,输入以下命令:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

成功以后,另外打开一个cmd,输入ipconfig列出所有IP:

红框圈起来的就是虚拟机在用的IP了,使用这个IP和刚才设置的账户密码就可以用客户端连接了:

(如果本机没有MySql,直接用localhost也是可以成功登陆navicat的。)

测试

通过navicat创建一个数据库docker_mysql:

 然后切换到docker环境,进入mysql01容器,查看所有数据库

使用客户端创建的数据库在容器内也可以查到,测试成功。

需要注意的一点是,docker一但停止运行,关联的虚拟机也会被释放,所有数据都会随之消失。资料卷可以解决这个问题,但是本文篇幅有限,后面几篇文章会详述这个问题。

到此这篇关于Docker部署MySQL并实现客户端连接的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

您可能感兴趣的文档:

--结束END--

本文标题: Docker部署MySQL并实现客户端连接

本文链接: https://lsjlt.com/news/163076.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Docker部署MySQL并实现客户端连接
    准备工作 在docker内部署任何应用,都需要先下载对应的镜像;下载镜像之前,需要先搜索镜像来确认该镜像是否存在: docker search mysql 从列表可以看到,dock...
    99+
    2024-04-02
  • docker-compose怎么部署eureka服务端和客户端
    本篇内容介绍了“docker-compose怎么部署eureka服务端和客户端”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用场景使用do...
    99+
    2023-07-05
  • mysql客户端navicat连接数据库
    实验环境说明:本地物理机windows7系统,安装vmware workstaion 11,新建centos6.6系统虚拟机并安装LAMP环境;本地物理IP:192.168.71.123   虚拟...
    99+
    2024-04-02
  • docker部署mysql8并设置可远程连接
    docker部署mysql的关键在于两点 1.mysql在生产环境产生的数据放在容器里很不安全,我们需要把数据文件夹挂载到容器外,以防数据丢失。 2.运行mysql镜像时需要设置初始密码,并且设置mysql可以远程连接。...
    99+
    2022-07-07
    dockermysql8远程连接 dockermysql8远程
  • Docker中如何像HTTP客户端一样连接并使用UNIX socket
    这篇文章将为大家详细讲解有关Docker中如何像HTTP客户端一样连接并使用UNIX socket,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Docker构架:薄CLI...
    99+
    2024-04-02
  • 如何实现C#服务端与客户端连接
    今天就跟大家聊聊有关如何实现C#服务端与客户端连接,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C#服务端与客户端连接实现的时间性:当服务器开始对端口侦听之后,便可以创建客户端与它建...
    99+
    2023-06-17
  • MySQL客户端怎么连接服务器
    这篇文章主要介绍“MySQL客户端怎么连接服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL客户端怎么连接服务器”文章能帮助大家解决问题。MySQL客户...
    99+
    2023-01-03
    mysql 服务器
  • Docker下安装Mongo4.2及客户端工具连接Mongo
    目录Mongo物理安装可以参考之前写的:Docker下安装Mongo4.2和客户端工具连接Mongo1、docker pull mongo:version:拉取对应版本的镜像2、查看...
    99+
    2024-04-02
  • Python中怎么实现服务端与客户端连接
    本篇内容主要讲解“Python中怎么实现服务端与客户端连接”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中怎么实现服务端与客户端连接”吧!服务端我们使用 socket 模块的&nbs...
    99+
    2023-06-08
  • C#中怎么实现服务端与客户端连接
    这篇文章将为大家详细讲解有关C#中怎么实现服务端与客户端连接,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#服务端与客户端连接实现实例:class Client {&n...
    99+
    2023-06-17
  • docker怎么部署mysql8并设置可远程连接
    本文小编为大家详细介绍“docker怎么部署mysql8并设置可远程连接”,内容详细,步骤清晰,细节处理妥当,希望这篇“docker怎么部署mysql8并设置可远程连接”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-02
  • 在Linux中部署mysql并远程连接
     1. 配置yum仓库 更新密钥rpm -import https: /repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库rpm -Uvh http: /repo.mysql.com /m...
    99+
    2023-10-04
    linux mysql 运维
  • Redis远程连接Redis客户端的实现步骤
    目录一 进入redis下的目录二 启动 redis服务三 连接客户端四 在windows本地中安装 redis可视化软件五 在linux关闭客户端六 设置防火墙规则:我的因为已经设置...
    99+
    2024-04-02
  • 【Docker】docker部署springboot+vue+mysql+nginx前后端分离项目【部署实战篇】
    文章目录 0、安装docker并准备一个springboot-vue前后端分离项目前后端打包放到服务器上1、docker 安装jdk2、docker 安装mysql通过Docker命令进入My...
    99+
    2023-09-03
    docker spring boot vue.js
  • MySQL 如何连接对应的客户端进程
    问题 对于一个给定的 MySQL 连接,我们如何才能知道它来自于哪个客户端的哪个进程呢? HandshakeResponse MySQL-Client 在连接 MySQL-Server 的时候,不只会把用户名密码发送...
    99+
    2022-05-19
    MySQL 连接对应客户端 MySQL 连接客户端进程
  • MySQL client客户端的连接方式是什么
    这篇文章主要介绍“MySQL client客户端的连接方式是什么”,在日常操作中,相信很多人在MySQL client客户端的连接方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2024-04-02
  • win7客户端如何连接CentOS6.6 MySQL数据库
    这篇文章将为大家详细讲解有关win7客户端如何连接CentOS6.6 MySQL数据库 ,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。服务器端:OS : &...
    99+
    2024-04-02
  • mysql多个客户端连接出现错误怎么解决
    当出现多个客户端连接mysql数据库时出现错误,通常是由于数据库连接数限制引起的。解决方法如下: 增加连接数限制:可以通过修改m...
    99+
    2024-04-09
    mysql
  • 如何限制Golang GRPC中客户端的并发连接
    php小编鱼仔将为大家介绍如何限制Golang GRPC中客户端的并发连接。在使用Golang进行开发时,我们常常会使用GRPC来进行服务间的通信。然而,如果不加以限制,客户端可能会因...
    99+
    2024-02-08
    并发请求
  • 在M1芯片的Macbook上使用docker-compose启动mysql,并利用 NaviCat Premium 客户端进行连接
    在M1芯片的Macbook上使用docker-compose启动mysql,并利用 NaviCat Premium 客户端进行连接 1、查看芯片版本   先打开控制台,使用 uname -m 来查看自己CPU芯片的架构   yourPrj...
    99+
    2023-10-03
    docker mysql 容器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作