1

尝试使用 Sequel Pro 进入这个流浪盒子。错误详细信息屏幕是;

Used command:  /usr/bin/ssh -v -N -S none -o ControlMaster=no -o ExitOnForwardFailure=yes -o ConnectTimeout=10 -o NumberOfPasswordPrompts=3 -o TCPKeepAlive=no -o ServerAliveInterval=60 -o ServerAliveCountMax=1 vagrant@control.example.dev -L 57790:127.0.0.1:3306

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Control socket " none" does not exist
debug1: Connecting to control.example.dev [127.0.0.1] port 22.
debug1: connect to address 127.0.0.1 port 22: Connection refused
ssh: connect to host control.example.dev port 22: Connection refused

一旦我在(vagrant ssh)中进行了 ssh,我就可以在命令行上登录到 mysql。

我可以进入,mysql -uroot -p然后输入空白密码。

我在 Sequel Pro 上的连接是;

MySQL主机:127.0.0.1

用户名:root

SSH 主机:control.example.dev

SH 用户: vagrant

其他都是空白!

4

3 回答 3

5

我有同样的问题。我已经破坏了我之前的 vagrant box 并使用相同的 IP 地址重建了它。尽管我的所有凭据都是正确的,但我一直遇到这个问题,如上图所示。

对我来说,解决方法是~/.ssh/known_hosts. 这些错误只是告诉我连接被拒绝,并且“隧道意外关闭”。

此问题的另一个解决方案是将您自己的id_rsa.pub密钥添加到 VM 的/home/vagrant/.ssh/authorized_keys文件中。这将有效地让您访问您的虚拟机,就像您通常授予自己对任何 Ubuntu 机器的无密码 ssh 访问权限一样。

于 2017-06-15T15:04:56.013 回答
2

运行时vagrant ssh,您已经在 VM 中,默认情况下使用套接字连接连接到 MySQL 数据库。

要使用 Sequel Pro 连接,或者从您的主机连接到 Vagrant 访客的 MySQL 实例,您需要通过 SSH 隧道连接。默认情况下,vagrant 使用 port 2222。您还需要使用私钥和用户连接到 Vagrant 来宾 VM vagrant

Vagrant 来宾的私钥位于其所在.vagrant/machines/[machine-name]/virtualbox目录中Vagrantfile。假设您在主目录中创建了一个名为 Vagrant 的访客debian,它应该位于

/user/your_name/vagrant/machines/debian/virtualbox/private_key

在 Sequel Pro 中,使用此私钥和vagrant用户名以及端口 2222 进行连接。

Sequel Pro vagrant 连接设置

于 2016-06-23T12:27:01.397 回答
0

仔细检查所有 MySQL 和 SSH 详细信息。重新输入一切!最好复制和粘贴以避免意外错误。我有完全相同的问题,它是由不正确的 IP 地址引起的。

于 2019-06-03T09:30:09.490 回答