我需要建立一个SSH隧道,以便本地PHP脚本能够连接到远程服务器上的MySQL服务器。
Remote machine: MySQL (127.0.0.1:3306) on Linux (SSH port 44422)
Local machine: Linux (Debian Squeeze)
问题是它不允许我连接这个命令:
ssh -oPort=44422 user@ip_address
如何建立一个SSH隧道,以便我的PHP脚本能够连接到远程MySQL?
(如果您认为另一种连接方法,例如通过PHP脚本建立SSH隧道更好,请告诉我。)
提前感谢!
编辑:我忘了提到SSH有一个单独的用户名/密码
我正在创建一个测试系统,需要授予用户远程数据库访问权限。我做这件事的方法如下:
mysql> SHOW GRANTS for codingo;
ERROR 1141 (42000): There is no such grant defined for user 'codingo' on host '%'
mysql> GRANT ALL PRIVILEGES ON *.* to 'codingo'@'localhost' WITH GRANT OPTION;
Query OK, 0 rows affected (0.
我有个奇怪的问题。
我正在尝试从linux主机连接到Windows主机上的远程MySQL服务器。
如果我尝试使用mysql客户端从shell连接,它可以完美地工作。
#mysql -h 192.168.x.x -u MyUser -pMyPassword
我也尝试过从一个简单的python脚本进行连接,它也能正常工作。
但是如果我尝试从php脚本连接,它会失败,并显示"Can't connect to MySQL server on '192.168.x.x‘(13)“错误。
mysql_connect ('192.168.x.x', 'MyUs