【发布时间】:2009-05-21 16:09:48
【问题描述】:
我很好奇是否可以将 UNIX 套接字映射到 INET 套接字。情况很简单,我想连接到 MySQL 服务器。不幸的是,它禁用了 INET 套接字,因此我只能连接 UNIX 套接字。我正在使用/编写的工具必须连接到 INET 套接字,因此我正在尝试查看是否可以将一个映射到另一个。
我进行了大量搜索,但我确实找到了socat,据称它可以满足我的需求。我想知道是否有人对如何实现这一点有任何建议。我一直在使用的命令行(部分成功)是:
socat -v UNIX-CONNECT:/var/lib/mysql/mysql.sock TCP-LISTEN:6666,reuseaddr
现在我可以建立连接并与服务器对话。不幸的是,任何建立多个连接的尝试都失败了,因为我需要使用 fork 选项,但这个选项似乎使连接不起作用。
我知道我可以使用 Perl(我的首选语言)来解决这个问题,但我宁愿避免自己编写整个实现。我熟悉 IO::Socket 库,我只是希望任何人都有做这种事情的经验。接受建议/想法。
谢谢。
【问题讨论】:
标签: mysql perl socat unix-socket inet-socket