gpt4 book ai didi

mysql - 在 mysql 中使用 TCP/IP 上的 Unix 套接字有什么正当理由吗?

转载 作者:可可西里 更新时间:2023-11-01 06:57:14 37 4
gpt4 key购买 nike

我想弄清楚为什么 mysql 默认使用 Unix 套接字 (/tmp/mysql.sock),而不是普通的 TCP/IP 套接字。

这似乎不是安全问题,因为您只能在 127.0.0.1 上收听,这应该同样安全(套接字文件是全局可写的,因此您不会获得基于 Unix 帐户的保护)。

当然,所有操作系统都非常依赖高性能 TCP/IP,以至于它不会比 Unix 套接字慢很多——Linux 甚至对网络流量都采用了各种零复制技巧,因此它肯定必须很快才能进行环回。

那么在这里使用 Unix 套接字有什么合理的理由,还是只是一些奇怪的历史事故?

最佳答案

虽然在遍历 localhost 时您不会访问整个 IP 堆栈,但您仍然访问了其中的很大一部分。unix 套接字本质上只是一个双向管道。它更快更轻。

Unix 套接字还允许您在不管理防火墙规则的情况下控制访问,因为可以通过文件系统权限授予访问权限。

unix 套接字提供的另一个特性是能够将文件描述符从一个进程传递到另一个进程。

关于mysql - 在 mysql 中使用 TCP/IP 上的 Unix 套接字有什么正当理由吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1838358/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com