MySQL connection over SSH tunnel - how to specify other MySQL server?(通过 SSH 隧道的 MySQL 连接 - 如何指定其他 MySQL 服务器?)
问题描述
我有大约 50 个数据库都设置在不同的主机名上,要求我通过 SSH 隧道连接到它们.
I've got ~50 databases all set up at different host names, with the requirement that I connect to them through an SSH tunnel.
例如:
SSH 主机在
ssh.example.com
MySQL 主机位于 mysql1.example.com
MySQL host at mysql1.example.com
我已经设法使用 autossh(运行 Debian 的网络服务器)创建了隧道,但我似乎无法弄清楚如何连接到超出"SSH 隧道的特定 MySQL 主机名.
I have managed to create the tunnel using autossh (web server running Debian), but I can't seem to figure out how to connect to a specific MySQL hostname "beyond" the SSH tunnel.
输入 lsof -i -n |egrep '\<ssh\>'
确认隧道正在工作(发送端口 3307 到 ssh.example.com 端口 3306)
Typing lsof -i -n | egrep '\<ssh\>'
confirms that the tunnel is working (sends port 3307 to ssh.example.com port 3306)
因此,当我尝试 mysql -h 127.0.0.1 -P 3307
时,连接被拒绝.不太奇怪,因为它不是 MySQL 服务器.
So when I try mysql -h 127.0.0.1 -P 3307
I get Connection refused. Not too weird since it's not an MySQL server.
我对你们的问题:
如何在创建 SSH 隧道后指定 mysql1.example.com
主机?我试过到处搜索,但似乎无法弄清楚.
How do I specify the mysql1.example.com
host AFTER creating the SSH tunnel? I've tried searching everywhere but can't seem to figure it out.
推荐答案
解决了!事情是在创建隧道本身时连接到正确的服务器 - 应该已经看到了.
Solved it! The thing was to connect to the correct server when creating the tunnel itself - should've seen that one coming.
ssh -f user@ssh.example.com -L 3307:mysql1.example.com:3306 -N
然后 mysql -h 127.0.0.1 -P 3307
按预期工作.:)
Then mysql -h 127.0.0.1 -P 3307
worked as intended. :)
这篇关于通过 SSH 隧道的 MySQL 连接 - 如何指定其他 MySQL 服务器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:通过 SSH 隧道的 MySQL 连接 - 如何指定其他 MySQL 服务器?
基础教程推荐
- 使用pyodbc“不安全"的Python多处理和数据库访问? 2022-01-01
- 无法在 ubuntu 中启动 mysql 服务器 2021-01-01
- SQL Server 中单行 MERGE/upsert 的语法 2021-01-01
- 在 VB.NET 中更新 SQL Server DateTime 列 2021-01-01
- 将数据从 MS SQL 迁移到 PostgreSQL? 2022-01-01
- SQL Server:只有 GROUP BY 中的最后一个条目 2021-01-01
- SQL Server 2016更改对象所有者 2022-01-01
- Sql Server 字符串到日期的转换 2021-01-01
- 如何在 SQL Server 的嵌套过程中处理事务? 2021-01-01
- ERROR 2006 (HY000): MySQL 服务器已经消失 2021-01-01