我正在尝试远程连接到我的Openshift v3 mysql数据库。 据我所知,如果没有适当的配置,这是不可能的,因为服务无法从外部本地访问。
我尝试了端口转发,这给了我以下错误(德语原因转换为缺少套接字访问权限):
this.props.onChange(this.refs.newText.value, this.props.id)
端口转发到空闲端口工作正常:
oc port-forward mysql-database-1-rqhc8 3306:3306
E1001 09:34:33.103656 2936 portforward.go:202] Unable to create listener: Error listen tcp4 127.0.0.1:3306: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig.
E1001 09:34:33.127445 2936 portforward.go:202] Unable to create listener: Error listen tcp6 [::1]:3306: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig.
W1001 09:34:33.141973 2936 portforward.go:154] Unable to listen on port 3306: All listeners failed to create with the following errors: listen tcp4 127.0.0.1:3306: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig., listen tcp6 [::1]:3306: bind: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig.
error: Unable to listen on any of the requested ports: [{3306 3306}]
但是,我无法连接到指定的端口。我必须针对哪个地址?
这些网址不起作用:
oc port-forward mysql-database-1-rqhc8 :3306
I1001 09:35:02.760192 7792 portforward.go:213] Forwarding from 127.0.0.1:51231 -> 3306
I1001 09:35:02.775740 7792 portforward.go:213] Forwarding from [::1]:51231 -> 3306
答案 0 :(得分:4)
好吧,我刚发现(意外)oc实际上将端口转发到你自己的本地机器上。
这正是文档中所说的,我简直无法相信它实际上会这样做。
因此,对于每个人都犯同样愚蠢的错误,只需连接到:
jdbc:mysql://localhost:<<port>>/<<database-name>>