Linux CentOS7 实现MySQL3306端口开启监听任意地址

进入mysql配置文件my.cnf,一般位于/ect目录下输入以下指令:
#开启监听所有地址
bind-address=0.0.0.0
重新启动mysql服务即可
于2021/5/10产生一个错误:
注意这样可能会导致linux本地上的web项目访问不了数据库,可却外部可以访问,原因未知,建议改成当前Linux上的地址: 传送门

最近在学习linux安装mysql遇到地址监听为空的问题,写下该篇博客以便记录,以下为详细解析步骤,授人以鱼不如授人以渔

1、开启监听地址


1.1、查看原因


话不多说,直接列出问题原因:
使用命令netstat -tunlp查看当前进程占用的端口

netstat -tunlp

在这里插入图片描述
我们可以发现mysql只是占用了端口,但并未开启任何监听地址,我们现在的想法就是让他与Tomcat占用的8080端口类似

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      2532/java 

此时我们就从配置文件入手,开启监听地址

1.2、修改配置文件开启所有监听


现在呢,有一个问题,就是我们不知道该修改哪个配置文件
我的MySQL是采用rpm方式安装的,那么首先:

1、通过rpm查找mysql相应的软件包信息

[root@localhost bin]# rpm -qa|grep -i mysql

此时,我们将得到以下这些内容:
在这里插入图片描述
2、根据以上内容,查看server的软件包安装了哪些配置文件,我们将要修改其中一个my.cnf的配置文件

[root@localhost bin]# rpm -ql mysql-community-server

输出:
在这里插入图片描述
3、此时我们就找到了mysql的开启监听的配置文件

现在我这边就只有一个配置文件,有的兄弟会有很多名为my.cnf的配置文件,那么我们就可以取查看哪些配置文件会被优先加载,就可以针对该配置文件进行修改

[root@localhost bin]# locate my.cnf
[root@localhost bin]# mysql --help|grep 'my.cnf'

在这里插入图片描述

4、修改配置文件,开启监听

命令:

[root@localhost bin]# vim /etc/my.cnf

编辑:

#开启监听所有地址
bind-address=0.0.0.0

提示:
在这里插入图片描述

注意:于2021/5/10 13:10发生一个Bug,当我尝试把web项目部署到linux上的tomcat后,对其访问数据库,一直显示无法连接,但是位于外部的Navicat去可以访问数据库,并且Windows同样的项目也能进行访问显示数据

最后尝试了以下解决办法就是:将地址改为我当前虚拟机的地址

#指定监听当前地址
bind-address=192.168.1.12

原因未知

1.3、重新启动mysql服务


重启服务命令:CentOS 7

[root@localhost bin]# systemctl restart mysqld

查看端口占用情况:

[root@localhost bin]# netstat -tunlp

大功告成:
在这里插入图片描述
以后要是再遇到这种服务监听地址打开不了的情况,就可以采用类似的解决办法,bye

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值