【Docker】04 部署MySQL
从官网上拉取最新MySQL镜像:
docker pull mysql:latest
创建并运行一个MySQL镜像的容器
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
即使该容器实例运行失败,也表示它是创建成功的,已经存在

命令参数的解释?
-itd
-d: 后台运行容器,并返回容器ID
-i: 以交互模式运行容器,通常与 -t 同时使用;
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; --name mysql-test
设置该容器实例的名称标识 -p 3306:3306
映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务 -e MYSQL_ROOT_PASSWORD=123456 mysql
设置 MySQL 服务 root 用户的密码。
如果物理机的已经运行了本地安装的MySQL并占用了3306端口,应该更改为3307或者其他端口
【如果这个容器异常无法使用,直接移除容器重新创建即可】
移除容器实例:
docker rm mysql-test

修改端口设置并重新执行运行命令
docker run -itd --name mysql-test -p 3307:3307 -e MYSQL_ROOT_PASSWORD=123456 mysql

我们访问MySQL容器,需要先进入这个容器:
docker exec -it 容器名称标识 bash

这里刚刚进入MySQL容器马上就退出了
再次启动就报错说容器没有运行
百度得知容器实例是因为Linux内存导致的
使用指令查看内存
free -h

算了玩不了。。。
然后使用TOP命令查看Linux所有进程使用情况:

发现本地安装的MYSQL服务内存占用高的离谱,于是立刻停止服务了
重新创建运行容器实例,这回正常了:

输入密码123456,访问成功:

使用本机的SQLyog访问测试,记住是3307端口
发现错误2003代码:

很可能是因为防火墙没开放这个端口
先退出容器:

防火墙开放3307端口,重启之后再看看

但是还是没有用,可能因为MYSQL8.021版本远程用户需要创建新用户才可以使用
进入容器实例,进入MySQL:
更改加密规则:
ALTER USER 'root'@localhost IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
创建一个远程用户:
CREATE USER 'daizhizhou'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
然后赋予完整权限:
GRANT ALL PRIVILEGES ON *.* TO 'daizhizhou'@'%';

最后刷新权限:
flush privileges;
使用远程账号访问还是不行,但是到这里我才明白是因为之前设置的端口号原因导致的:
删除这个镜像应该使用这个端口配置,因为mysql默认3306端口,配置3307根本无法监听
所以需要由MySQL镜像的3306配置实际端口的3307:
docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
但是又有新的问题:

这个好解决,回到上面创建新的用户并赋予所有权限,然后刷新权限,访问即可

终于反应过来那个配置的解释的话,这样的话就可以本机mysql和容器mysql共存了
【Docker】04 部署MySQL的更多相关文章
- 在Centos上安装docker,部署mysql数据库
何为docker? Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. 本机环境 24小时不关机的Centos ...
- 利用Docker快速部署Mysql
写在前面 我又来更新了~~~,今天内容较少,主要是利用Docker快速部署Mysql和初始化数据 利用Docker下载Mysql 简洁明了,在命令提示符中输入 docker pull mysql:8. ...
- docker stack 部署 mysql 5.6
=============================================== 2018/7/1_第1次修改 ccb_warlock === ...
- Docker容器部署Mysql数据库服务器
本节会用到的Docker命令如下: docker images 查看mysql镜像id docker run -d -p xxxxxxxxxxxxxxx/zhufc/mysql:v2 通过镜像生成 启 ...
- docker环境部署mysql
参考文档 docker官方:https://hub.docker.com/_/mysql/?tab=description 部署步骤 1. 拉取镜像 这里我拉取了tag为5.7的镜像 docker p ...
- 如何利用 docker 快速部署 Mysql 服务
docker 基础教程不再多说,这里只着重讲如何使用 docker 部署 mysql 服务 docker 拉取 访问 dockerhub,搜索关键词 mysql,我这里选择 mysql-server, ...
- docker 安装部署 mysql(配置文件启动)
获取 mysql 镜像 docker pull mysql:5.6 docker images 创建容器 创建宿主机 redis 容器的数据和配置文件目录 # 创建宿主机 redis 容器的数据和配置 ...
- 在docker上部署mysql
1.拉取官方镜像5.6的版本.(查看有哪些版本,可以在阿里云的镜像仓库查看,我配置的镜像是阿里云的) docker pull mysql:5.6 2.查看拉取的镜像,获取镜像id docker ima ...
- Docker windows nanoserver/mysql镜像root用户密码错误
由于需要在Windows server上的Docker中部署mysql服务,为了方便起见所以在Docker hub找到了nanoserver/mysql (https://hub.docker.com ...
- 群晖DS218+部署mysql
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
随机推荐
- 语义化结构标签 多媒体标签 H5新增表单内容
语义化结构标签: section 更偏向于一个区域类似div(块) article 更偏向于显示内容(块) aside 标签作为article呢绒的辅助板块(块) header 标签做为一个网页头部 ...
- WIN11 Windows 11 安装过程中如何跳过强制联网
WIN11 Windows 11 安装过程中如何跳过强制联网.22H2. 在要求联网的页面中按下 "Shift+F10"调出命令行窗口,再输入"OOBE\BYPASSNR ...
- 图片jpg,png转为BASE64编码
-- using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; namespace aliy ...
- 你唯一需要的是“Wide Events”,而非“Metrics、Logs、Traces”
Charity Majors 的这句话可能是对科技行业当前可观察性状态的最好总结--完全的.大规模的混乱.大家都很困惑.什么是 trace?什么是 span?一行日志就是一个 span 吗?如果我有日 ...
- rust程序设计(6)枚举与模式匹配
rust中的枚举有什么用?枚举可以嵌入类型的好处是什么 你可以在同一个枚举中既有单个值,也有元组或结构体. 枚举的每个变体可以拥有不同数量和类型的关联数据. 这增加了类型的灵活性和表达力,使你能够更精 ...
- Java中常见的几种的溢出
引言 在开发过程中,因为编程经验不足,经常会导致各种各样的溢出,今天本文就举例说明几种常见的溢出 堆溢出 堆溢出是最常见的一种溢出. 导致原因:堆中没有足够的空间储存新生成的实例对象 public s ...
- llm-universe - 1
Smiling & Weeping ---- 难怪春迟迟不来,原来是我把雪一读再读 一.大型语言模型(LLM)理论简介 1 大型语言模型(LLM)的概念 大语言模型(LLM,Large Lan ...
- Xcode调试内存最新理解
前提: Xcode 16.0 beta 设置 Scheme设置中勾选Malloc Scribble.Malloc Stack Logging. 这么做是为了在Memory Graph.Profile中 ...
- 关于c指针的理解
1 #include<stdio.h> 2 { 3 int a= 100,b=10; 4 int *p1=&a,*p2=&b; 5 *p1=b; 6 *p2=a; 7 pr ...
- 开源一个RAG大模型本地知识库问答机器人
弹指间,2009年大学毕业到现在2024年,已经15年过去了. 前2天,看到自己14年在博客园写的一个博客,哪个时候是工作之余创业 感兴趣的朋友可以看看我10年前发的一篇博客https://www.c ...