从 uMongo 连接到 EC2
Connect from uMongo to EC2
我正在尝试使用 uMongo 远程连接到 Amazon EC2 服务器上的 MongoDB。
我在我的亚马逊服务器上打开了一个端口:
- 类型:自定义 TCP 规则
- 协议:TCP
- 端口范围:27017
- 来源:0.0.0.0/0.
我在 uMongo 中添加了一个连接,设置如下:
- 名称:项目名称
- 服务器:https://12.34.56.789:27017
- 连接模式:自动
- 插座类型:普通
- 连接超时:2,000
- 套接字超时:0
- 安全写入:[选中]
- 代理类型:None
- 代理主机:localhost
- 代理端口:9,000
所有其他字段都是空的。基本上,我只更改了 "Servers" 字段,其他所有字段都保持不变。
然后,当我尝试通过此连接进行连接时,出现以下异常:
java.lang.NumberFormatException: For input string: "//12.34.56.789"
at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:569) at
java.lang.Integer.valueOf(Integer.java:766) at
com.edgytech.umongo.MainMenu.connect(MainMenu.java:177) at
com.edgytech.umongo.MainMenu.connect(MainMenu.java:118) at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498) at
com.edgytech.swingfast.ButtonBase.actionPerformed(ButtonBase.java:297)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376) at
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6533) at
javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at
java.awt.Component.processEvent(Component.java:6298) at
java.awt.Container.processEvent(Container.java:2236) at
java.awt.Component.dispatchEventImpl(Component.java:4889) at
java.awt.Container.dispatchEventImpl(Container.java:2294) at
java.awt.Component.dispatchEvent(Component.java:4711) at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280) at
java.awt.Window.dispatchEventImpl(Window.java:2746) at
java.awt.Component.dispatchEvent(Component.java:4711) at
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at
java.awt.EventQueue.access0(EventQueue.java:97) at
java.awt.EventQueue.run(EventQueue.java:709) at
java.awt.EventQueue.run(EventQueue.java:703) at
java.security.AccessController.doPrivileged(Native Method) at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue.run(EventQueue.java:731) at
java.awt.EventQueue.run(EventQueue.java:729) at
java.security.AccessController.doPrivileged(Native Method) at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
我做错了什么?
当遇到java.lang.NumberFormatException时,表示不识别数字格式。即
`java.lang.NumberFormatException: For input string: "//12.34.56.789"
在这种情况下,服务器名称解析器会尽力处理 FQDN 和 IP 地址。在这种情况下,解析器会剥离 url 方案(http/https/ftp 等)并假定您输入 IP 地址。它调用尝试解析数字,但失败了,因为前缀“//”。
要解决此问题,请输入 IP 地址或不带 url 方案
的完全限定域名 (FQDN)
根据错误消息,您似乎通过在主机字符串中包含 'https' 来配置 'connection' 错误。尝试只使用“12.34.56.789:27017”,就像上面提到的另一张海报一样,首先检查您是否可以使用类似以下内容连接到 mongo 主机:
telnet 12.34.56.789 27017
如果您的 EC2 安全组设置错误,telnet 命令将无限期挂起,显示 'Trying 12.34.56.78...'
HTH
我正在尝试使用 uMongo 远程连接到 Amazon EC2 服务器上的 MongoDB。
我在我的亚马逊服务器上打开了一个端口:
- 类型:自定义 TCP 规则
- 协议:TCP
- 端口范围:27017
- 来源:0.0.0.0/0.
我在 uMongo 中添加了一个连接,设置如下:
- 名称:项目名称
- 服务器:https://12.34.56.789:27017
- 连接模式:自动
- 插座类型:普通
- 连接超时:2,000
- 套接字超时:0
- 安全写入:[选中]
- 代理类型:None
- 代理主机:localhost
- 代理端口:9,000
所有其他字段都是空的。基本上,我只更改了 "Servers" 字段,其他所有字段都保持不变。
然后,当我尝试通过此连接进行连接时,出现以下异常:
java.lang.NumberFormatException: For input string: "//12.34.56.789" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:569) at java.lang.Integer.valueOf(Integer.java:766) at com.edgytech.umongo.MainMenu.connect(MainMenu.java:177) at com.edgytech.umongo.MainMenu.connect(MainMenu.java:118) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.edgytech.swingfast.ButtonBase.actionPerformed(ButtonBase.java:297) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.AbstractButton.doClick(AbstractButton.java:376) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) at java.awt.Container.dispatchEventImpl(Container.java:2280) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access0(EventQueue.java:97) at java.awt.EventQueue.run(EventQueue.java:709) at java.awt.EventQueue.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue.run(EventQueue.java:731) at java.awt.EventQueue.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
我做错了什么?
当遇到java.lang.NumberFormatException时,表示不识别数字格式。即
`java.lang.NumberFormatException: For input string: "//12.34.56.789"
在这种情况下,服务器名称解析器会尽力处理 FQDN 和 IP 地址。在这种情况下,解析器会剥离 url 方案(http/https/ftp 等)并假定您输入 IP 地址。它调用尝试解析数字,但失败了,因为前缀“//”。
要解决此问题,请输入 IP 地址或不带 url 方案
的完全限定域名 (FQDN)根据错误消息,您似乎通过在主机字符串中包含 'https' 来配置 'connection' 错误。尝试只使用“12.34.56.789:27017”,就像上面提到的另一张海报一样,首先检查您是否可以使用类似以下内容连接到 mongo 主机:
telnet 12.34.56.789 27017
如果您的 EC2 安全组设置错误,telnet 命令将无限期挂起,显示 'Trying 12.34.56.78...'
HTH