使用workbench通过ssh连接到远程MySQL数据库
我正在尝试通过SSH通过MySQL Workbench连接到远程数据库。我试图连接到的远程数据库有防火墙,它是受私钥保护的(我已经将其隐藏为打开SHH)。当我尝试连接时,我总是遇到一个错误,我只是对我应该使用的数据库的信息有点困惑。我一直看到人们在不同的问题中使用localhost,而数据库在同一点上间歇性地改变。我目前的设置是,我必须连接到防火墙的服务器(检查),现在有多个虚拟机正在运行,我希望连接到,例如192.1.91.0。我还在本地主机5000上的putty上设置了一个端口(我不知道这是否相关)。当我尝试使用192.1.91.0端口3306或本地主机5000进行连接时。我也犯了同样的错误。有人能帮忙吗。附件是我放入workbench的信息的图像如果MySQL服务器配置为接受远程连接,您可以使用服务器IP地址,但不需要通过ssh进行连接。选择connect over ssh后,工作台将使用ssh凭据创建一个端口转发到指定的服务器。因此,您必须使用localhost作为MySQL主机名。由于端口转发,请求将转发到远程计算机。简而言之:据我所知,您必须使用localhost。我认为这里有一些误解。防火墙不受密钥对的保护。需要SSH连接。防火墙仅使用特定规则过滤网络流量(例如,仅允许启用的网络端口通过)。使用SSH连接时,必须使用从远程SSH连接端看到的MySQL地址。这意味着,如果MySQL服务器与SSH服务器(使用SSH隧道时连接到的服务器)运行在同一台机器上,则地址为localhost(或IPv4/IPv6环回地址)。有关更多详细信息,请参阅我在Youtube上的视频。要将workbench与私有数据库连接,您需要一个“跳转主机”,也称为“堡垒主机”,它可以是与数据库位于同一VPC中的公共子网中的任何EC2实例 请遵循以下步骤:使用workbench通过ssh连接到远程MySQL数据库,mysql,ssh,mysql-workbench,putty,Mysql,Ssh,Mysql Workbench,Putty,我正在尝试通过SSH通过MySQL Workbench连接到远程数据库。我试图连接到的远程数据库有防火墙,它是受私钥保护的(我已经将其隐藏为打开SHH)。当我尝试连接时,我总是遇到一个错误,我只是对我应该使用的数据库的信息有点困惑。我一直看到人们在不同的问题中使用localhost,而数据库在同一点上间歇性地改变。我目前的设置是,我必须连接到防火墙的服务器(检查),现在有多个虚拟机正在运行,我希望连接到,例如192.1.91.0。我还在本地主机5000上的putty上设置了一个端口(我不知道这是
来源:securitygroupofEC2(您可以通过输入 “sg-”)
-标准TCP/IP over SSH
-SSH主机名:#34.3.3.1
-SSH用户名:#常见的有:ubuntu、ec2用户、管理员
-SSH密钥文件:<附加您的EC2.pem文件>
-MYSQL主机名:#mydb.tbgvsblc6.eu-west-1.rds.amazonaws.com
-MYSQL端口:3306
-用户名:
-密码:
单击“测试连接”并完成 谢谢你的指导,你的教程很棒,但我仍然有一些理解上的困难。目前,如果我在公钥/私钥身份验证中使用putty,那么从那时起我将使用sshuser@192.134.3.21. 然后我使用mysql-user-pword连接到mysql数据库。对于SSH主机名,我假设使用86.12343.11,但是如何指定要连接的服务器(192.134.3.21)?听起来像是双跳。首先,您有一个到86.x.x.x的SSH连接,然后再有一个到192.x.x.x的SSH连接。然后从那里连接到另一台机器上的MySQL服务器?恐怕WB不直接支持这种双跳。它创建一个SSH隧道,并期望从该远程端到达MySQL服务器。您可以尝试使用putty创建一个到第一个SSH端点的隧道,然后将WB配置为在该端点上,但我从未尝试过,所以我不知道它是否可以这样工作。不,mysql服务器位于192.x.x.xMysql服务器位于192.x.x.x的VM上
- Standard TCP/IP over SSH
- SSH Hostname : < your EC2 Public IP > #34.3.3.1
- SSH Username : < your username > #common ones are : ubuntu, ec2-user, admin
- SSH KeyFile: < attach your EC2 .pem file>
- MYSQL Hostname: <database endpoint name> #mydb.tbgvsblc6.eu-west-1.rds.amazonaws.com
- MYSQL Port: 3306
- Username : <database username>
- Password: <database password>