[英]sshtunnel forwarding and mysql connection on google cloud function
[英]netcat for MySQL connection forwarding
这个问题与
Dockerized Web 应用程序连接到主机上的 MySQL 数据库
我正在尝试打开从 docker 容器到主机的连接以支持 MySQL 连接。
我理解它的方式我应该能够在我的容器中执行以下操作
nc.traditional -l -p 3306 -c "nc.traditional 172.17.42.1 3306" &
打开从 Docker 容器端口 3306 到主机(IP 172.17.42.1)MySQL 实例的隧道,在端口 3306 上运行。
问题是我尝试从容器连接时
mysql --host=127.0.0.1 --port=3306 -uroot -ppassword
我收到错误消息,隧道退出
root@7ec710b77baf:/var/log# mysql --host=127.0.0.1 --port=3306 -uroot -pAcc355
(UNKNOWN) [172.17.42.1] 3306 (mysql) : Connection refused
ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0
[1]+ Exit 1 nc.traditional -l -p 3306 -c "nc.traditional 172.17.42.1 3306"
为什么隧道会退出? 我究竟做错了什么? 当我尝试不同的端口时,我收到不同的错误消息,它似乎肯定会联系 MySQL 实例。
我无法在日志或标准输出中找到任何信息来提供帮助。
有任何想法吗?
根据我的经验,您可能更喜欢 socat 而不是 netcat。
例如
socat TCP-LISTEN:3306,fork TCP:db-host:3306
我发现 netcat 处理连接的问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.