在 Ubuntu 下通过 Docker 部署 MySQL 服务器

devtools/2025/1/15 18:49:00/

简介

Docker 是一个开源的容器化平台,让开发者能够轻松打包、分发和运行应用程序。它通过容器隔离应用和依赖,确保一致的运行环境。而 MySQL 是一个广泛使用的关系型数据库管理系统,以其高性能和可靠性而著称。结合 Docker 和 MySQL,开发者可以快速创建和管理数据库实例,简化开发和运维流程。

在 Alpine Linux 下通过 Docker 部署 MySQL 服务器的步骤

  1. 安装 Docker

    首先,确保已经安装了 Docker。可以使用以下命令安装 Docker:

    sudo apt update
    sudo apt install docker.io
    sudo systemctl start docker
    sudo systemctl enable docker
    
  2. 拉取 MySQL 镜像

    拉取官方的 MySQL Docker 镜像。推荐使用最新的稳定版本:

    docker pull mysql:latest
    
  3. 运行 MySQL 容器

    运行 MySQL 容器,使用以下命令:

    docker run --name mysql-server -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest
    

    解释参数:

    • --name mysql-server:为容器指定名称。
    • -e MYSQL_ROOT_PASSWORD=my-secret-pw:设置 MySQL 根用户的密码。
    • -d:以后台模式运行容器。
  4. 检查容器状态

    使用以下命令查看容器是否成功运行:

    docker ps
    
  5. 连接到 MySQL 容器

    使用 MySQL 客户端连接到容器:

    docker exec -it mysql-server mysql -uroot -p
    

    输入你在第3步中设置的密码 my-secret-pw

  6. 创建数据库和用户

    在 MySQL 提示符下,创建数据库和用户:

    CREATE DATABASE mydb;
    CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword';
    GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%';
    FLUSH PRIVILEGES;
    

    解释 SQL 命令:

    • CREATE DATABASE mydb;:创建名为 mydb 的数据库。
    • CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword';:创建用户 myuser,密码为 mypassword
    • GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%';:授予用户对 mydb 数据库的所有权限。
  7. 持久化数据

    为了持久化数据,可以使用以下命令修改容器的运行方式:

    docker run --name mysql-server -e MYSQL_ROOT_PASSWORD=my-secret-pw -v /my/local/datadir:/var/lib/mysql -d mysql:latest
    

    解释参数:

    • -v /my/local/datadir:/var/lib/mysql:将本地目录 /my/local/datadir 挂载到容器的 MySQL 数据目录。

这样,你就成功在 Ubuntu 下通过 Docker 部署了 MySQL 服务器!继续享受你的黑客生活吧!😎✨


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

相关文章

跨境电商领域云手机之选:亚矩阵云手机的卓越优势

在跨境电商蓬勃发展的当下,云手机已成为众多企业拓展海外市场的得力助手。亚矩阵云手机凭借其独特优势,在竞争激烈的云手机市场中崭露头角。不过,鉴于市场上云手机服务供应商繁多,企业在抉择时需对诸多要素予以审慎考量。 跨境电商…

顶层const与底层const

当一个常量引用绑定到与其本身不同的数据类型时,会生成一个临时量。 例如,有一个const int&(常量引用指向整数),如果用一个double类型的值去初始化它,编译器会创建一个临时的int变量,这个临…

Win11远程桌面怎么设置?

通过Windows自带的远程桌面功能,可以轻松的远程访问另一台电脑。不过,在使用这一功能之前,需要先进行相关的设置。那么,Win11远程桌面怎么设置?接下来,我们将为您提供详细的Win11远程桌面设置步骤。 步骤 …

Python AI教程之十六:监督学习之决策树(7)和其它算法的比较

ML | 逻辑回归与决策树分类 逻辑回归和决策树分类是目前最流行和最基本的两种分类算法。没有哪种算法比另一种更好,而一种算法的优越性通常归功于所处理数据的性质。 我们可以在不同类别上比较这两种算法—— 标准 逻辑回归 决策树分类 可解释性 难以解释 更易于解释 决策…

微服务滚动法布

滚动发布:1.启动新的服务并进行健康检查——2.新服务启动——3.杀老服务-----4.发送curl到nacos下线—5.等待10S-------6.杀老服务 在Nacos中,服务实例的上下线状态是由服务实例自身通过心跳机制与Nacos服务器交互来维持和控制的。当服务实例启动时&…

CAS操作的底层原理(总线锁定机制和缓存锁定机制 )

目录 处理器级别的实现 总线锁定机制 缓存锁定机制 MSEI表示缓存行的四种状态 MESI协议状态转换 CAS操作是不保证可见性的 CAS基本概念 ABA问题的处理 性能考虑 先总结一下,CAS(Compare And Swap)是一种原子操作,它比较…

相机小孔成像模型与透视变换

0 背景 本文用于记录小孔相机成像的数学模型推导,并讨论特定条件下两个相机之间看到图像的变换关系。 1 小孔成像模型 小孔成像模型如上图所示。物理世界发光点P,经过小孔O投影到物理成像平面,形成像点I’。 简易起见,构造虚拟成…

[Transformer] The Structure of GPT, Generative Pretrained Transformer

The Structure of Generative Pretrained Transformer Reference: The Transformer architecture of GPT models How GPT Models Work