HCRM博客

CentOS 3306是什么?它有哪些特点和用途?

CentOS 7 上开放和管理 3306 端口

在 CentOS 7 中,MySQL 默认使用 3306 端口进行通信,要确保 MySQL 能够远程连接,需要对防火墙进行配置,并确保 MySQL 服务器允许远程访问,本文将详细介绍如何在 CentOS 7 上开放和管理 3306 端口,以便 MySQL 数据库能够远程连接。

CentOS 3306是什么?它有哪些特点和用途?-图1
(图片来源网络,侵权删除)

一、检查和启用防火墙服务

确认防火墙服务是否已启动并运行,如果未启动,可以通过以下命令启用:

  • sudo systemctl start firewalld
  • sudo systemctl enable firewalld

二、查看当前防火墙规则

可以使用以下命令查看当前防火墙的所有规则:

  • sudo firewallcmd listall

三、开放 3306 端口

为了允许远程访问 MySQL 服务,需要在防火墙中开放 3306 端口,执行以下命令:

  • sudo firewallcmd zone=public addport=3306/tcp permanent

此命令会永久添加 3306 端口到公共区域。permanent 参数确保重启后规则仍然有效。

四、重新加载防火墙规则

修改防火墙规则后,需要重新加载以使更改生效:

  • sudo firewallcmd reload

五、验证端口是否已开放

可以使用以下命令验证 3306 端口是否已成功开放:

CentOS 3306是什么?它有哪些特点和用途?-图2
(图片来源网络,侵权删除)
  • sudo firewallcmd zone=public queryport=3306/tcp

如果返回yes,则表示端口已开放。

六、配置 MySQL 以允许远程访问

1、登录 MySQL:

使用 root 用户登录 MySQL:

  • mysql u root p

2、设置访问地址:

如果您希望允许用户从特定 IP 地址连接到 MySQL 服务器,可以使用以下命令:

  • GRANT ALL PRIVILEGES ON *.* TO 'root'@'your_ip_address' IDENTIFIED BY 'your_password' WITH GRANT OPTION;

your_ip_address 替换为您希望允许访问的 IP 地址,将your_password 替换为 MySQL 用户的密码,如果您希望允许从任何 IP 地址进行连接,请将root@your_ip_address 替换为root@%

CentOS 3306是什么?它有哪些特点和用途?-图3
(图片来源网络,侵权删除)

3、刷新权限:

完成上述步骤后,刷新 MySQL 权限以使更改生效:

  • FLUSH PRIVILEGES;

七、检查 MySQL 监听状态

除了检查防火墙配置外,还可以确认 MySQL 服务是否正确监听了 3306 端口:

  • sudo netstat tuln | grep 3306

这条命令会显示所有监听中的 TCP 端口,并查找是否有 3306 端口被监听。

八、检查配置文件

确保 MySQL 的配置文件(通常是/etc/my.cnf/etc/mysql/my.cnf)中的bindaddress 参数设置正确,允许远程访问:

  • [mysqld]
  • bindaddress = 0.0.0.0

如果bindaddress 设置为127.0.0.1,则 MySQL 只监听本地连接,远程客户端将无法连接。

通过以上步骤,您可以检查 CentOS 7 上的防火墙是否开放了 MySQL 的 3306 端口,并确保 MySQL 服务正确配置以允许远程连接,如果发现端口未开放,您可以使用firewallcmd 命令临时或永久性地开放端口,为了安全起见,仅允许受信任的 IP 地址访问您的 MySQL 服务器,并定期更新和升级您的系统和软件。

常见问题解答 (FAQs)

Q1: 如何更改 MySQL 的默认端口?

A1: 如果需要更改 MySQL 的默认端口,可以编辑 MySQL 配置文件(通常是/etc/my.cnf/etc/mysql/my.cnf),找到[mysqld] 部分,然后修改port 参数,将端口更改为 3307:

  • [mysqld]
  • port = 3307

修改完成后,重新启动 MySQL 服务以使更改生效:

  • sudo systemctl restart mysqld

确保防火墙中也开放了新的端口号。

Q2: 如何允许多个 IP 地址访问 MySQL?

A2: 如果需要允许多个 IP 地址访问 MySQL,可以分别为每个 IP 地址授予权限,或者使用通配符% 允许任何 IP 地址访问,以下是两个示例:

1、允许特定 IP 地址:

  • GRANT ALL PRIVILEGES ON *.* TO 'root'@'specific_ip_address' IDENTIFIED BY 'your_password' WITH GRANT OPTION;

2、允许任何 IP 地址:

  • GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;

完成授权后,别忘了刷新权限:

  • FLUSH PRIVILEGES;

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/16918.html

分享:
扫描分享到社交APP
上一篇
下一篇