我已经在不同的主机名上设置了约50个数据库,并要求我通过SSH隧道连接到它们。
例如:
SSH主机位于 ssh.example.com
ssh.example.com
MySQL主机位于 mysql1.example.com
mysql1.example.com
我已经设法使用autossh(运行Debian的Web服务器)创建隧道,但是我似乎无法弄清楚如何连接到SSH隧道之外的特定MySQL主机名。
键入lsof -i -n | egrep '\<ssh\>'确认隧道正在运行(将端口3307发送到ssh.example.com端口3306)
lsof -i -n | egrep '\<ssh\>'
所以当我尝试时,mysql -h 127.0.0.1 -P 3307我会拒绝连接。不太奇怪,因为它不是MySQL服务器。
mysql -h 127.0.0.1 -P 3307
我对你们的问题:
mysql1.example.com创建SSH隧道后如何指定主机?我曾尝试到处搜索,但似乎无法弄清楚。
解决了!事情是在创建隧道本身时连接到正确的服务器-应该已经看到一台即将到来的服务器。
ssh -f user@ssh.example.com -L 3307:mysql1.example.com:3306 -N
然后mysql -h 127.0.0.1 -P 3307按预期工作。:)