python - 客户端机器上的 MySQLdb 可以连接到服务器机器上的数据库吗?

标签 python mysql mysql-python

我不是网络/网络/互联网程序员,所以请原谅我在这方面的菜鸟。我有一个使用免费托管服务的网站。它们包括一个 MySQL 数据库。以下是数据库的详细信息:

port = 3306
host = "fdb4.biz.nf"
database = "1284899_6067"
user = "1284899_6067"
password = "somepass9351"

我正在使用 MySQLdb 模块(安装在我的客户端机器上 - 而不是服务器上)连接到这个数据库:

db = MySQLdb.connect(host=host, user=user, passwd=password, db=database,port=port)

但是我得到以下错误:

OperationalError: (2003, "Can't connect to MySQL server on 'fdb4.biz.nf' (10060)

我已经尝试过

  • 尝试了来自不同主机的两个不同数据库
  • 尝试更改端口
  • 尝试在 SO 中搜索类似的答案,但所有其他人都连接到“本地主机”

我的想法:

  • 这可能是我的防火墙造成的吗?我正在使用学校的互联网。我不认为这可能是因为我在客户端,所以如果有的话,它是服务器的防火墙。

两个问题

  1. 当 MySQLdb 导入到客户端时,是否可以用于连接到服务器上的数据库?
  2. 如果是,我做错了什么?

非常感谢您的帮助,非常感谢!一整天都被困在这个问题上。

最佳答案

出于安全原因,mysql 只监听来自本地主机的连接。错误代码 10060 基本上是:不允许远程连接。

解决办法:找一个my.ini(或者linux下的my.cnf),试着找一行:

bind-address = 127.0.0.1

这一行说:只允许本地连接。所以,你应该注释掉这一行,或者设置你的 IP 地址。

关于python - 客户端机器上的 MySQLdb 可以连接到服务器机器上的数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23964994/

相关文章:

python - Seaborn tsplot 错误

python - <> 在 beautifulsoup 中变成 &lt &gt

mysql - WAMP Mysql数据库版本变更

python - MySQLdb 连接到数据库错误

django - 如何在Django的安装文件中指定多个 "init_command"

python - 在 Python C 扩展中处理 PyList_Append 时在 Py_DECREF/INCREF 上丢失

python - 如何从python中的.sec.gz类型的ftp服务器读取文件

php - MySQL 使用不同的 WHERE 子句进行多次计数并查看结果

mysql - Spark 1.4.1 : Issue when reading MySQL BigInt columns

python - 显示从 MySQL 获取的 Kannada 字符