这是我的另一个问题的后续内容:https://stackoverflow.com/questions/37056763/cannot-remote-access-mysql-database-of-my-openshift-mysql-cartridge
我已尝试按照此处的建议进行端口转发:https://stackoverflow.com/questions/19749599/openshift-how-to-remote-access-mysql但当我尝试时rhc port-forward -a myapp
它给了我一个错误:
尝试转发端口时出错。您可以尝试通过运行以下命令手动转发:ssh -N[电子邮件保护]
因此,当我执行命令时,它会给我另一个错误:
无法将主机添加到已知主机列表 (/.ssh/known_hosts)。权限被拒绝 (publickey、gssapi-keyex、gssapi-with-mic)。
我尝试将我的主机添加到known_hosts文件中,但显然我无法访问该文件。
我寻找解决方案并发现了这篇有同样问题的帖子:https://stackoverflow.com/questions/24113522/rhc-not-working-on-openshift-instance?ref=driverlayer.com/web但没有得到答复。
因此我再次发布该帖子以查明为什么端口转发不起作用以及如何解决这个问题。
编辑(额外信息)
执行时rhc setup
在生成令牌步骤中出现权限被拒绝错误。
立即生成令牌?(是|否)是
为此客户端生成授权令牌... /usr/lib/ruby/1.8/fileutils.rb:243:in `mkdir': 权限被拒绝 - /var/lib/openshift/USER/.openshift (Errno::EACCES)
执行ls -l ~/.ssh/known_hosts
还给我一个权限错误
ls:无法访问/var/lib/openshift/USER//.ssh/known_hosts:权限被拒绝
答案1
因此,在我弄清楚必须在本地计算机上进行端口转发后,仍然出现相同的错误。
但幸运的是,我找到了解决方案。我正在使用 sourcetree 推送我的工作,但它给我一个错误,说我的私钥没有加载。所以我在 Pageant 中加载了我的私钥。之后我再次尝试端口转发,令我惊讶的是它确实起作用了。
当它起作用时,我立即从 Pageant 中删除了密钥,毫不奇怪,当我尝试端口转发时,它再次给我一个错误。
所以总的来说,我的问题是我必须从本地机器进行端口转发,并且必须将我的私钥加载到 Pageant 中。