如何在自己的云服务器上部署mysql

devtools/2024/12/23 0:16:08/

mysql_0">如何在自己的云服务器上部署mysql

前言:

我是用的是阿里云服务器,我的服务器上安装的系统是Ubuntu 20.04,一下内容都是居于此撰写。

前期准备工作

远程链接自己的云服务器,这里给大家推荐一个好用的软件:FinalShell

**下载地址:**https://www.hostbuf.com/t/988.html

FinalShell 是一款集远程终端管理、文件传输、远程桌面、网络诊断等功能于一体的跨平台运维工具。它被广泛应用于云服务器管理和开发运维场景,特别是在需要频繁连接和操作 Linux 服务器时,FinalShell 提供了简单高效的工具支持。

FinalShell 的典型应用场景

1. 云服务器管理
  • 运维人员通过 FinalShell 管理云服务器(如阿里云、腾讯云、AWS 等),实现远程连接、部署应用、查看日志、调试问题等操作。
2. 文件部署
  • 开发人员通过 FinalShell 将本地开发的文件、脚本上传到远程服务器,或将服务器上的日志文件下载到本地。
3. 远程运维和监控
  • 运维工程师通过 FinalShell 的性能监控功能,实时查看服务器资源使用情况,并快速排查问题。
4. 网络调试
  • 网络工程师使用 FinalShell 测试服务器与其他设备之间的网络连通性,排查网络问题。
5. 多服务器管理
  • 当需要同时管理多个服务器时,可以使用 FinalShell 的多窗口和会话管理功能,高效地切换和操作。

1、安装Docker

你可以在你的云服务其上通过以下的命令来安装Docker:

sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list'
sudo apt update
sudo apt install docker-ce

[外链图片转存中…(img-5otpyLvR-1734706751749)]

很好,现在依赖软件已经安装完成,接下来可以继续安装 Docker:

1. 添加 Docker 的 GPG 密钥

运行以下命令,确保可以验证 Docker 软件包的签名:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

2. 添加 Docker 软件包源

添加 Docker 官方的 APT 软件包源:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3. 更新 APT 软件包索引

更新软件包索引,以使系统识别新的 Docker 源:

sudo apt update

4. 安装 Docker CE

运行以下命令安装 Docker 社区版(CE):

sudo apt install docker-ce docker-ce-cli containerd.io

5. 验证 Docker 是否安装成功

完成安装后,可以通过以下命令检查 Docker 是否已正确安装:

docker --version

如果显示 Docker 的版本号,说明 Docker 已安装成功。

6. 测试 Docker 是否正常运行

运行以下命令拉取并运行一个测试容器,以确保 Docker 正常工作:

sudo docker run hello-world

正确情况下,你会在页面看到如下内容:

在这里插入图片描述

但是如果你没有给安装hello world 镜像的话,是无法输出的。

如果你在第五步检验docker没有安装成功:可能是由于直接连接 Docker 官方源失败,可以使用国内的 Docker 镜像源(比如阿里云源)进行安装:

1、安装 Docker 的国内镜像版本

运行以下命令安装 Docker 的 docker.io 包(国内源):

sudo apt update
sudo apt install docker.io -y

这个命令会直接从 Ubuntu 官方仓库或镜像安装 docker.io 包。安装完成后,检查 Docker 是否可用:

docker --version

如果返回 Docker 的版本号,则说明安装成功。

2、启动 Docker 服务

安装完成后,需要启动并设置 Docker 服务开机自启:

sudo systemctl start docker
sudo systemctl enable docker

然后测试是否能运行:

sudo docker run hello-world

7、安装hello world 镜像


1. 手动拉取 hello-world 镜像

运行以下命令来手动下载测试镜像:

sudo docker pull hello-world

2. 再次运行测试容器

拉取成功后,再次运行以下命令测试 Docker 是否工作正常:

sudo docker run hello-world

如果一切正常,你应该会看到类似以下的输出:

Hello from Docker!
This message shows that your installation appears to be working correctly.
...

3. 如果无法拉取镜像

如果在拉取镜像时遇到网络问题,可以尝试配置国内镜像加速器。

配置 Docker 镜像加速器(推荐阿里云)

运行以下命令创建或编辑 Docker 的配置文件:

sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json

在文件中添加以下内容(以阿里云加速器为例):

[外链图片转存中…(img-uGEYLoob-1734706751751)]

{"registry-mirrors": ["https://qlbp0ohw.mirror.aliyuncs.com"]
}

在FinalShell中,保存并退出(按 Ctrl+O,然后按 Enter,最后按 Ctrl+X)。

重启 Docker 服务

应用新配置后,重启 Docker 服务:

sudo systemctl restart docker

然后再次尝试运行测试镜像:

sudo docker run hello-world

一般情况下,是可以成功的。

2、拉取MySQL镜像

接下来,您需要从Docker Hub拉取MySQL镜像。执行以下命令:

sudo docker pull mysql:latest

要在Ubuntu 20.04上使用Docker安装MySQL,可以按照以下步骤操作:

3. 运行MySQL容器

一旦镜像下载完成,可以启动一个MySQL容器。假设您希望使用root用户,并设置密码为your_password,可以运行以下命令:

sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -d mysql:latest

在这里插入图片描述

4. 查看容器运行状态

您可以通过以下命令查看MySQL容器是否正在运行:

sudo docker ps

5. 连接到MySQL容器

要进入MySQL容器,您可以使用以下命令:

sudo docker exec -it mysql-container mysql -u root -p

系统会提示您输入密码,输入您在运行容器时设置的MYSQL_ROOT_PASSWORD

6. (可选)配置MySQL端口映射

如果您希望从外部访问MySQL数据库,可以在运行容器时指定端口映射。例如:

sudo docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mysql:latest

这将容器的3306端口映射到主机的3306端口,使您可以通过主机的IP地址访问MySQL。

7. 停止和删除容器

如果您不再需要该MySQL容器,可以通过以下命令停止和删除容器:

sudo docker stop mysql-container
sudo docker rm mysql-container

-name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -d mysql:latest


这将容器的3306端口映射到主机的3306端口,使您可以通过主机的IP地址访问MySQL。### 7. 停止和删除容器如果您不再需要该MySQL容器,可以通过以下命令停止和删除容器:```bash
sudo docker stop mysql-container
sudo docker rm mysql-container

http://www.ppmy.cn/devtools/144520.html

相关文章

go-zero(十四)实践:缓存一致性保证、缓存击穿、缓存穿透与缓存雪崩解决方案

go zero 实践:缓存一致性保证、缓存击穿、缓存穿透与缓存雪崩解决方案 缓存 作为一种重要的技术手段,可以有效提高系统的响应速度,降低对数据库的压力。但是缓存的使用伴随一些常见问题,如缓存一致性、缓存击穿、缓存穿透和缓存雪…

项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(二)

文章目录 一、登录功能实现1、前端实现1.1 创建登录组件1.2 安装和配置Element Plus1.3 安装axios和调用后端接口2、后端实现2.1 创建数据表和准备数据2.2 配置MYSQL配置信息2.3 登录功能实现2.3.1 创建实体类2.3.2 创建登录服务接口及实现2.3.3 创建Mapper2.3.4 实现登录接口A…

[maven]使用spring

为了更好理解springboot,我们先通过学习spring了解其底层。 这里讲一下简单的maven使用spring框架入门使用。因为spring这一块的东西很多都需要联合起来后才好去细讲,本篇通过spring-context大致地介绍相关内容。 注意:spring只是一个框架&am…

《探索QT 5.14.1:功能、特性与应用全解析》

《探索QT 5.14.1:功能、特性与应用全解析》 一、QT 5.14.1:强大的跨平台开发利器二、QT 5.14.1 的核心功能与特性(一)丰富的控件库(二)高效的信号槽机制(三)卓越的性能表现&#xff…

完全二叉树的权值(蓝桥杯2019年试题G)

给定一棵包含N个节点的完全二叉树,树上的每个节点都有一个权值,按从上到小、从左到右的顺序依次是A1、A2……An,(1,2,n为下标。)如下图所示。 现在,小明要把相同深度的节点的权值加到一起&#…

uniapp Native.js 调用安卓arr原生service

有问题,文中的内容不正确 最近搞了个uni小项目,一个定制的小平板,带一个nfc设备,厂家只给了一套安卓原生demo,头一次玩原生安卓,废了好半天劲打出来arr包,想镶进uniapp里,网上查了好…

Qt WORD/PDF(四)使用 QAxObject 对 Word 替换(QWidget)

关于QT Widget 其它文章请点击这里: QT Widget 国际站点 GitHub: https://github.com/chenchuhan 国内站点 Gitee : https://gitee.com/chuck_chee 姊妹篇: Qt WORD/PDF(一)使用 QtPdfium库实现 PDF 操作 Qt WORD/PDF(二…

Mac配置 Node镜像源的时候报错解决办法

在Mac电脑中配置国内镜像源的时候报错,提示权限问题,无法写入配置文件。本文提供解决方法,青测有效。 一、原因分析 遇到的错误是由于 .npm 目录下的文件被 root 用户所拥有,导致当前用户无法写入相关配置文件。 二、解决办法 在终端输入以下命令,输入管理员密码即可。 su…