mysql 8.0 中 关于skip-networking 配置

mysql 8.0 中 关于skip-networking 配置

如果开启了 skip-networking配置查询为on,那么你的mysql远程连接不了,你的mysql状态可能是正常的但是你的监听端口是没有的。

您可以查看您的mysql端口,但是不出意外的话端口为 0

show variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 0     |
+---------------+-------+
1 row in set (0.00 sec)

查看配置文件发现客户配置了 skip_networking 变量。该配置会导致数据库无法通过 TCP/IP 进行连接。

mysql> show variables like '%networking%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| skip_networking | ON    |
+-----------------+-------+
1 row in set (0.00 sec)
 
[root@root-3 ~]# grep skip /opt/mysql/etc/8888/my.cnf
skip_external_locking = 1
skip_name_resolve = 1
skip_replica_start = 1
skip_networking=on 

解决方法是  把 skip_networking=off
mysql> show variables like '%networking%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| skip_networking | OFF    |
+-----------------+-------+
1 row in set (0.00 sec)

skip_networking 控制 MySQL 服务是否允许 TCP/IP 连接,默认是关闭。如果开启这个变量,MySQL 服务只允许本地连接,不允许任何 TCP/IP 连接。

需要注意的是当配置了 --skip-grant-tables 变量之后,skip_networking 变量默认也会开启,此时禁用任何远程连接。

skip_networking 变量需要根据业务情况来进行配置,对于只允许本地访问的系统来说,强烈建议配置该变量;对于大部分需要远程访问的数据库是不需要进行配置的,保持默认关闭就可以。这个变量不能动态修改,需要修改配置文件,然后重启数据库服务。

这种问题多会出现在MyPHPAdmin使用宝塔安装的mysql。烦人!!!!

你可能感兴趣的:(mysql,adb,数据库,网络)