7

我希望我的 MySQL 服务器只使用 unix 套接字,而忽略 TCP 网络,所以我将这一行添加到我的配置中/etc/my.cnf

skip-networking 

但是netstat告诉我 MySQL 仍然使用 TCP 端口 3306:

# netstat -tl | grep mys
tcp        0      0 *:mysql      *:*                         LISTEN 
4

3 回答 3

3

如果原因是为了防止远程访问,您可以通过以下方式实现您的目标:

bind-address = 127.0.0.1

my.cnf的[mysqld]部分并重新启动 mysqld。

这确保mysqld只允许本地连接。

为了防止远程访问跳过网络不是唯一的选择,正如(2013)my.cnf中的评论所说:

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.

编辑: 安全版本(带有上面的绑定地址)已经是最近(截至 2013 年)Ubuntu 版本中的默认版本,因此只有在您真正想要启用远程服务时才需要更改它(注释掉上面的行)。

于 2013-03-11T01:08:27.830 回答
3

原来我将文件保存为my.conf,应该是my.cnf,这就是为什么服务器只加载并使用默认配置的原因。

于 2013-03-19T05:00:56.370 回答
0

您使用的参数似乎是正确的,如果您想将与您的 mysql 服务器的连接限制为仅本地连接,我应该将此行添加到 /etc/my.cnf

[mysqld]
bind-address=127.0.0.1

不要忘记重新启动 mysqld 服务以激活配置更改

  • 删除了不需要的跳过网络的使用
于 2013-03-11T00:53:14.223 回答