[英]Python MySQLdb connection to online database
虽然我可以通过这种方式连接到本地数据库没有问题:
import MySQLdb
localdb = MySQLdb.connect( host="127.0.0.1",
user="root",
passwd="password",
db="events")
我可以连接到我的在线数据库。
通常,我使用phpmyadmin手动访问此数据库,地址类似于212.227.000.000/phpmyadmin
所以我尝试了类似的东西
onlinedb = MySQLdb.connect( host="212.227.000.000" ...
要么
onlinedb = MySQLdb.connect( host="212.227.000.000/phpmyadmin" ...
但是我得到一个错误,例如:
OperationalError: (2003, "Can't connect to MySQL server on '212.227.000.000' (10061)")
听起来212.227.000.000/phpmyadmin
是PHPMyAdmin的URL(您在浏览器中打开的东西)。 如果是这样,则该数据库可能不会托管在IP 212.227.000.000的计算机上。 您应该检查PHPMyAdmin如何连接到数据库。 如果PHPMyAdmin连接到127.0.0.1,则可能意味着数据库未在外部IP地址上侦听,并且无法通过网络进行访问。
如果您具有ssh访问222.227.000.000的权限,则可以使用netstat
命令进行检查:
$ netstat -pant | grep LISTEN | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN -
上面的0.0.0.0表示MySQL正在侦听所有IP,并且禁止任何防火墙,您应该能够连接到数据库。
否则,如果显示127.0.0.1:3306
,则只能从计算机本身而不是通过网络访问数据库。 在这种情况下,您可以使用SSH隧道。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.