Skip to content

docker安装mysql

0 背景

有时, 因为业务或开发需要, 我们需要快速搭建一些数据库环境, 比如mysql | oracle | mongodb等, 有时候环境不一定很好部署, 可能部署一个环境需要消耗大量的时候, 有时候数据库可能还不一定连得上, 因为我们也尝试使用docker去完成这些操作.

那么使用docker部署数据库环境有很多优势:

  • 操作简单, 易于部署升级 Docker容器可以在不同的环境中轻松部署,无论是开发、测试还是生产环境, 快速部署一个数据库环境只需要一行命令即可。也可以更容易地升级 MySQL 的版本或者切换到不同的数据库版本,而不用担心影响系统中其他应用的稳定性。
  • 环境隔离 Docker提供了隔离性,确保应用程序及其依赖项在一个独立的环境中运行,不受主机系统环境的影响。
  • 快速启动和停止 Docker容器可以在几秒钟内启动和停止,这对于开发和测试环境的快速迭代非常有利。
  • 版本控制 Docker可以使用版本标签,方便地管理不同版本的MySQL。你可以根据需要选择特定的版本,而无需担心与系统中已安装的其他版本冲突。因此, 我可以使用docker不同版本的mysql或其他数据库, 互相不干扰.
  • 资源管理 Docker提供了精细的资源管理,我们可以为每个容器分配特定的 CPU、内存和网络资源,从而更好地控制应用程序的性能和可用性。

当然, 在生产环境中, 不建议使用docker直接部署数据库, 在开发和测试环境中, 使用docker部署的数据库是非常有利的.

1 安装&运行运行MySQL容器

运行以下命令来下载并运行MySQL容器, 该命令将会安装最新版的mysql:

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

在上面的命令中,

--name mysql-container 指定了容器的名称。

-e MYSQL_ROOT_PASSWORD=your_password 部分用于设置MySQL的root用户密码。

-d 参数用于在后台运行容器。

-p 3307:3306 参数将MySQL容器的3306端口映射到主机的3306端口,以便可以从主机访问MySQL服务。也就是说, 我们需要从外网访问到这个数据库的时候, 是通过3307端口去进行访问的. 在一定程度上, 我们避免了常用的mysql的3306端口导致的安全风险.

mysql:latest 是MySQL的官方Docker镜像。

2 连接到MySQL容器

docker exec -it mysql-container mysql -uroot -p

输入账号密码, 即可进入到mysql的命令行界面.

或者在外部服务中通过映射的主机端口(在这个例子中是3307)来访问MySQL服务

3 关于

欢迎关注我的微信公众号