当前位置: 首页 > news >正文

Docker 中运行的 MySQL 数据库与 Docker 外部的管理系统连接

步骤 1:运行 MySQL 容器

首先,确保你的 Docker 容器中运行了 MySQL 数据库。

docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 mysql:latest
  • --name mysql-container 为容器命名。
  • -e MYSQL_ROOT_PASSWORD=my-secret-pw 设置 MySQL 的 root 用户密码。
  • -d 后台运行容器。
  • -p 3306:3306 将容器的 3306 端口映射到主机的 3306 端口。

步骤 2:检查 MySQL 容器状态

确保 MySQL 容器正在运行。

docker ps -f name=mysql-container

步骤 3:配置 MySQL 允许外部访问

默认情况下,MySQL 只允许本地访问。你需要修改 MySQL 的配置以允许外部连接。

  • 进入容器:

    docker exec -it mysql-container bash
    
  • 登录 MySQL:

    mysql -u root -p
    
  • 修改 root 用户的权限,允许外部连接:

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'my-secret-pw';
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    

步骤 4:配置 MySQL 监听所有 IP 地址

编辑 MySQL 配置文件,确保 MySQL 监听所有 IP 地址。

  • 在容器中打开 MySQL 配置文件:

    vi /etc/mysql/my.cnf
    
  • 找到 [mysqld] 部分,添加或修改以下内容:

    bind-address = 0.0.0.0
    
  • 重新启动 MySQL 服务:

    service mysql restart
    

步骤 5:从 Docker 外部连接 MySQL

现在你可以从 Docker 外部使用管理系统(如 MySQL Workbench)连接 MySQL 数据库。

  • 主机:localhost 或 Docker 主机的 IP 地址
  • 端口:3306
  • 用户名:root
  • 密码:my-secret-pw

验证步骤可行性

  1. 运行 MySQL 容器:通过 docker ps 确认容器运行正常。
  2. 配置 MySQL 允许外部访问:通过 mysql -u root -p 连接 MySQL,执行 SHOW GRANTS FOR 'root'@'%'; 确认权限修改成功。
  3. 配置 MySQL 监听所有 IP 地址:通过 netstat -tulnp | grep mysql 确认 MySQL 正在监听 0.0.0.0:3306
  4. 从管理系统连接 MySQL:使用 MySQL Workbench 或其他客户端连接测试。
http://www.lryc.cn/news/368046.html

相关文章:

  • 10 设备树
  • 【架构分析】GPU执行GEMM矩阵运算实例演示
  • 从《千脑智能》看大模型
  • k8s Pods漂移时间配置
  • Python - json 美化格式、保存文件
  • 博客目录~
  • RPC RMI 区别以及在java中的应用
  • TCP和udp能使用同一个端口通讯吗
  • 红黑树的介绍与实现
  • easyexcel将csv转为excel处理数字问题
  • DDMA信号处理以及数据处理的流程---随机目标生成
  • 爬虫实现思路
  • 神经网络 torch.nn---Non-Linear Activations (ReLU)
  • 【微服务】使用kubekey部署k8s多节点及kubesphere
  • 目标检测数据集 - 垃圾桶满溢检测数据集下载「包含VOC、COCO、YOLO三种格式」
  • 6.9总结(省赛排位赛1)
  • 58.CountdownLatch
  • Java数据结构准备工作---常用类
  • SD 使用教程
  • Sylar---协程调度模块
  • iOS Hook 崩溃
  • 区间预测 | Matlab实现LSTM-ABKDE长短期记忆神经网络自适应带宽核密度估计多变量回归区间预测
  • linux内核下rapidio(TSI721)相关笔记汇总
  • 从GPT-4到GPT-4o:人工智能的进化与革命
  • 【Java】/*抽象类和接口*/
  • TCP/IP协议介绍——三次握手四次挥手
  • [C++]基于C++opencv结合vibe和sort tracker实现高空抛物实时检测
  • Apache Doris 基础 -- 数据表设计(模式更改)
  • 【机器学习】【遗传算法】【项目实战】药品分拣的优化策略【附Python源码】
  • 电子电气架构 ---车载安全防火墙