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 服务器?
基础教程推荐
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 在 SQL 中连接多个表 2021-01-01
- 无法解决整理冲突 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
