使用阿里云部署基于docker的mysql云服务

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本篇文章将介绍如何使用阿里云安装docker、部署mysql服务,并远程连接至远端mysql

大家好我是软件工程专业的一名大四学生,目前正在一家公司实习,我通过带我的师兄了解到了“飞天加速计划·高校学生在家实践”活动。本文将主要介绍ecs的简单使用和遇到的问题。
虚拟化技术很受欢迎,因为它大大便捷了环境搭建,所以我们先安装docker:
第一步:从阿里云工作台中获得实例的公网ip和密码,远程连接至实例。(或者通过阿里云控制台直接远程连接到实例)。
第二步:通过yum安装docker。
注意点:
1、首先要找到自己服务器的系统版本,然后根据不同的版本去安装对应版本的docker,我刚开始就安装错了docker。
2、使用yum安装记得切换镜像源,提高速度。
第三步:通过docker --version命令查看docker版本信息,以此确认docker是否安装成功。
出现下列信息即可视为安装成功:
screenshot-20220510-123900.png
以上是docker的安装步骤,基础的命令我就不加上了,不熟悉的可以自行百度。
接下来是基于docker安装mysql镜像并启动对应的容器
我们采用docker-compose的形式来拉去mysql镜像并创建容器,使用docker-compose查看相关介绍信息,如下图所示:screenshot-20220510-124241.png
从图中我们可以了解docker-compose的作用,以及基本的命令。
第一步:编写mysql对应的docker-compose文件
我的文件内容如下图所示(仅供参考):
screenshot-20220510-124642.png
注意点:
1、图中的镜像名称要记得指定对应版本,否则会拉去最新的版本(通常最新版本的不是我们想要的)。
2、指定容器的名称,我个人习惯容器名称和镜像名称一致,有多个的话以01、02、03等区别。
3、指定初始化的root的密码。
4、非常重要的,记得通过数据卷把mysql的配置信息、日志信息、数据信息挂载出来。
第三步:运行docker-compose文件,并制定以后台启动的方式启动。
完成后通过docker ps命令查看容器运行状态
1652158533840.jpg
至此mysql容器运行成功。

注意:想要远程连接mysql,还需要将mysql的远程连接限制打开,然后通过远程的数据库可视化工具连接测试即可,我使用的是workbench,这是成功连接后的样子image.png
并且要把实例的安全组对应的端口放开,mysql需要放开3306端口,具体如下图所示
image.png

总结:使用阿里云服务器跟自己的虚拟机没有区别,将自己需要的软件安装并配置好即可。通过阿里云的可视化工作台可以很简便的管理你的服务器的基础配置。
本次部署mysql是为了我的毕业设计搭建环境,通过这次实践,我不仅巩固了对linux操作系统基本命令使用,并且还深入学习了docker相关的知识,最重要的是了解到了阿里云的强大和便捷。作为一名java开发,最大的愿望就是加入阿里云。
希望未来可以体验到更好的阿里云,祝愿阿里云越来越好。
我的作品:
image.png

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
消息中间件 监控 RocketMQ
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
149 91
|
6天前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
11天前
|
SQL Java 关系型数据库
MySQL原理简介—3.生产环境的部署压测
本文介绍了Java系统和数据库在高并发场景下的压测要点: 1. 普通系统在4核8G机器上每秒能处理几百个请求 2. 高并发下数据库建议使用8核16G或更高配置的机器 3. 数据库部署后需进行基准压测,以评估其最大承载能力 4. QPS和TPS的区别及重要性 5. 压测时需关注IOPS、吞吐量、延迟 6. 除了QPS和TPS,还需监控CPU、内存、磁盘IO、网络带宽 7. 影响每秒可处理并发请求数的因素包括线程数、CPU、内存、磁盘IO和网络带宽 8. Sysbench是数据库压测工具,可构造测试数据并模拟高并发场景 9. 在增加线程数量的同时,必须观察机器的性能,确保各硬件负载在合理范围
114 72
|
12天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
90 42
|
13天前
|
JavaScript 前端开发 Docker
如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
通过这些步骤,可以确保您的Next.js应用在多核服务器上高效运行,并且在Docker环境中实现高效的容器化管理。
72 44
|
13天前
|
关系型数据库 MySQL 数据库
Docker下Mysql8数据备份与恢复
通过以上步骤,您可以在Docker环境下高效地备份和恢复MySQL 8数据库。备份数据时,使用 `mysqldump`工具生成逻辑备份文件,并存储到指定目录;恢复数据时,使用 `mysql`工具从备份文件中读取数据并恢复到数据库。自动化脚本和定时任务的配置可以进一步简化备份和恢复的管理过程。
73 41
|
21天前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
24天前
|
SQL Java Maven
docker部署apollo
docker部署apollo步骤
|
26天前
|
关系型数据库 MySQL Docker
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
|
3天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
42 25