社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

Docker部署MySQL数据库

DevOps实战派 • 2 年前 • 684 次点击  

关注公众号,获取更多精彩内容

在软件开发和部署中,容器化技术已经成为一个非常流行的选择。Docker 是其中最为广泛采用的容器化平台之一,它可以帮助开发和运维人员轻松地构建、部署和管理应用程序及其依赖项。

本文将介绍如何使用 Docker 部署 MySQL 数据库。

1. 安装 Docker

首先,确保你的系统上已经安装了 Docker。你可以访问 Docker 官方网站,根据你的操作系统下载并安装 Docker。

2. 拉取 MySQL 镜像

一旦 Docker 安装完成,你可以从 Docker Hub 上拉取 MySQL 官方镜像。
打开终端或命令行界面,并输入以下命令:
docker pull mysql
这将会下载 MySQL 的最新版本到你的本地环境中。

3. 启动 MySQL 容器

接下来,你可以使用以下命令启动一个 MySQL 容器:
docker run -d  --name mysql-demo -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql
在这个命令中,我们做了以下事情:
  • --name mysql-demo:为容器指定一个名称,这里我们将其命名为 mysql,你可以根据需要自行更改。
  • -v 容器的/var/lib/mysql目录储存数据库文件,将其挂载到主机的/data/mysql_data目录,用于实现数据持久化。
  • -e MYSQL_ROOT_PASSWORD=123456:通过环境变量设置 MySQL 的 root 用户的密码。
    除该环境,下面几个也是常用的量:
    MYSQL_DATABASE 创建新库,值为数据库名称;
    MYSQL_USER 创建数据库用户,值为用户名;
    MYSQL_PASSWORD  该数据库用户的密码,变量值为密码。
  • -d:使容器在后台运行。

  • mysql:指定使用的 MySQL 镜像。

4. 连接到 MySQL

现在 MySQL 容器已经在后台运行,你可以使用以下命令连接到 MySQL 服务器:
docker exec -it mysql-demo mysql -uroot -p
系统将提示你输入 MySQL 的 root 用户密码,输入之后即可连接到 MySQL 服务器。

5. 进行数据库操作

一旦连接到 MySQL 服务器,你可以执行常见的数据库操作,例如创建新的数据库、创建表、插入数据等等。以下是一些常用命令的示例:

  • 创建新的数据库:




    
CREATE DATABASE mydatabase;
  • 选择数据库:

USE mydatabase;
  • 创建新的表:

CREATE TABLE users (    id INT AUTO_INCREMENT PRIMARY KEY,    username VARCHAR(50) NOT NULL,    email VARCHAR(100) NOT NULL);
  • 插入数据:

INSERT INTO users (username, email) VALUES ('john_doe', 'john@example.com');

6. 停止和删除容器

当你完成了对 MySQL 数据库的操作后,你可以停止并删除 MySQL 容器。使用以下命令停止容器:

docker stop mysql-demo
后,如果你不再需要该容器,可以使用以下命令删除容器:
docker rm mysql-demo

结语:

通过 Docker,你可以轻松地部署和管理 MySQL 数据库。使用容器化技术,你可以在任何地方快速部署数据库,并且避免了与操作系统和依赖项相关的配置问题。


全文结方便的话可以随手点个“赞”或者“在看”,感谢阅读!

如果觉得内容有帮助,欢迎分享文章到朋友圈和技术群。
-------------------------------------------

Prometheus精品教程,点击下方图片查看  ↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/168778