在MySQL工作台中,我无法通过PC /IP连接从PC连接。到底怎么回事?
我在Ubuntu mysql.myhost.com上创建了一个Ubuntu5.1数据库。我可以在本地访问。TCP (PC)提供通过MySQL通过ssh建立连接。它运行在命令行mysql工作良好的远程服务器上的3306端口上。
我使用了以下会话详细信息:
当我试图连接时,会收到一条错误消息:“通过mysql.myhost.com的SSH隧道与用户根目录连接到mysql.myhost.com,未能连接到127.0.0.1:3306的mysql.myhost.com。”
“无法在'127.0.0.1‘(10061)上连接到MySQL服务器
作为另一个测试,我使用Putty设置了端口3306的SSH隧道,我可以使用MySQL工作台连接OK,通过该隧道将连接到本地3306的连接转发到远程服务器,如前所述。但是我不能让"TCP/IP通过SSH“在Workbench中工作。
次要问题:当Workbench询问“SSH公钥文件的路径”时,它是否真的需要我的私钥文件?
发布于 2011-11-19 01:57:33
当我自己遇到这个错误时,我偶然发现了这个问题。我终于能弄清楚配置了。
剩下的唯一的事情就是正确地配置SSH服务器来处理密钥而不是密码。希望这能帮上忙。
发布于 2011-06-26 21:45:52
您可能需要检查mysql.user表中的用户。
运行以下查询:
SELECT user,host FROM mysql.user;你应该看到这样的东西:
mysql> SELECT user,host,password FROM mysql.user;
+------------------+-------------+-------------------------------------------+
| user | host | password |
+------------------+-------------+-------------------------------------------+
| root | localhost | *7A670E02260CDEEFF062DD08F3A6F6DA079998CB |
| ping | % | *124E1DB56CC8D6E2FEE8315BB2544BF04B980DB6 |
| admin | 10.67.135.% | 1a6858054a41fede |
| icorbin | 10.67.135.% | 366ed93a7396650e |
+------------------+-------------+-------------------------------------------+
4 rows in set (0.00 sec)请注意
如果希望root用户通过TCP/IP进行连接,则必须为根用户指定IP地址或网卡。
就像这样:
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'whateverpassword';如果root密码与root@localhost相同,则
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY PASSWORD '*7A670E02260CDEEFF062DD08F3A6F6DA079998CB ';警告: root@'%‘通常不推荐。可以尝试root@'10.%‘或任何其他的根目录网卡。
试试看!!
发布于 2011-06-26 14:49:36
我认为TCP/IP OpenSSH方法的工作方式是建立MySQL连接的“正常”SSH连接(就像使用-L与OpenSSH命令行客户端进行隧道一样)。
因此,您需要指定一个连接到服务器上的SSH服务器,通过它建立隧道。在这里,您似乎在使用mysql.myhost.com:3306,这意味着您正在3306端口上运行这个SSH服务器(而不是MySQL)。
可以在127.0.0.1:3306上绑定MySQL服务器,在端口3306上为mysql.myhost.com在外部IP地址上绑定SSH服务器,但这是不可能的。我猜您的SSH服务器正在监听端口22 (默认情况)。
您可能应该使用mysql.myhost.com:22。(检查您可以通过正常的SSH客户端(如Putty )连接到它。)
https://dba.stackexchange.com/questions/3489
复制相似问题