使用Docker部署MySQL 5.7并配置防火墙

步骤1: 切换到超级用户

首先,打开终端,输入以下命令切换到超级用户(root):

su

然后输入您的root密码。

步骤2: 启动Docker服务

确保Docker服务已经启动。可以使用如下命令启动Docker(如果它尚未运行):

systemctl start docker
步骤3: 运行MySQL容器

使用docker run命令来启动一个MySQL 5.7容器。此命令将创建一个名为mysql的容器,映射端口3307到容器内部的3306端口,并设置环境变量如时区、root用户的用户名和密码等。

docker run \
  --name mysql \
  -p 3307:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -e MYSQL_INITDB_ROOT_USERNAME=root \
  -e MYSQL_INITDB_ROOT_PASSWORD=123456 \
  -e MYSQL_DEFAULT_AUTHENTICATION_PLUGIN=mysql_native_password \
  -v /path/to/mysql/data:/var/lib/mysql \
  -d mysql:5.7

注意:请将/path/to/mysql/data替换为实际的主机路径,用于存储MySQL数据。

步骤4: 配置防火墙规则

为了使外部设备能够访问MySQL服务,需要通过firewalld添加一个新的端口规则。

  • 查看firewalld状态以确认其是否正在运行:
systemctl status firewalld
  • 添加新的端口规则:
firewall-cmd --zone=public --add-port=3307/tcp --permanent
  • 重新加载firewalld以应用更改:
firewall-cmd --reload
  • 确认端口规则已成功添加:
firewall-cmd --list-all
步骤5: 检查Linux服务器IP地址

最后,确定您的服务器IP地址以便从其他设备连接到MySQL服务:

hostname -I

这将显示所有分配给Linux服务器的IP地址。选择正确的IP地址与之前配置的端口号一起使用,以从外部连接到MySQL数据库。

通过以上步骤,您应该能够在CentOS系统上成功部署MySQL 5.7并通过Docker管理它,同时确保外部设备可以通过配置的防火墙规则访问该数据库服务。

步骤6: 宿主机使用navicat进行远程连接docker中的mysql

测试成功代表完成! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值