Loading
0

取消mysql监听ipv6只监听ipv4地址方法
被墙跳转TG:@qianhenetwork QQ 851617266

301免备案跳转微信公众号
腾讯云服务器大促销。
华为服务器
前言:mysql安装后默认是监听了ipv6的,ipv6也包含了ipv4,但突然有个需求是mysql只监听ipv4地址不监听ipv6地址,这个也很简单,直接在my.cnf配置文件中添加规则即可。
额外说明:
1、安装mysql后默认是监听在“:::3306”上的,这个表示ipv4监听,同时也包含了ipv4,也就说,ipv6和ipv4都支持访问mysql。
2、“0.0.0.0:3306” 是ipv4监听,不支持ipv6的网络访问。
设置只允许ipv4地址监听。
解决方法:(操作前建议将这个文件复制一份,防止改错
打开mysql数据库的配置文件,一般默认为:“/etc/my.cnf ”(具体路径以自己的为准
在“[mysqld]”下面增加如下规则保存。

bind-address = 0.0.0.0

如图。

执行命令重启mysql:“service mysqld restart ”(重启没保存则正常)
执行命令“netstat -lunpt” 查看监听情况可以看到是0.0.0.0:3306 监听了。
但ipv6网络可能仍然连接到这个端口,这个是很可能是因为IPv6到IPv4的映射机制导致的。
如果整个系统的服务都不需要ipv6网络访问,可以参考如下禁止
注意:操作后整个服务器都不会监听ipv6,如果业务需要使用,则会有问题,请评估后操作。
1、打开 /etc/sysctl.conf 文件以编辑内核参数。

vi /etc/sysctl.conf

2、添加以下行到文件末尾,以禁用 IPv6。

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

3、保存并关闭文件。执行以下命令以应用新的内核参数:

sudo sysctl -p

4、重新启动网络服务,以确保 IPv6 不再监听:

sudo service networking restart


 
301免备案跳转微信公众号
华为服务器
腾讯云服务器大促销。

声明:站长码字很辛苦啊,转载时请保留本声明及附带文章链接:https://www.zfcdn.xyz/showinfo-13-36311-0.html
亲爱的:被墙域名跳转TG:@qianhenetwork QQ:851617266,可否收藏+评论+分享呢?
上一篇:解决:All matches were filtered out by modular filtering for argument: mysql-community-server
下一篇:MySql数据库(InnoDB存储类型)占用IO资源高处理方法