进入
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