【问题标题】:PyMySQL Connecting to a Remote DatabasePyMySQL 连接到远程数据库
【发布时间】:2018-02-05 15:27:59
【问题描述】:

我正在学习 Python 并尝试通过教程连接到远程数据库。 我遇到的问题是我不确定用什么替换 localhost,我尝试过域、IP 地址等,但不断收到以下错误。

OperationalError: (2003, "Can't connect to MySQL server on 'remotehost 名称'(超时)”)

# Open database connection
db = pymysql.connect("localhost","username","password","dbname" )

# prepare a cursor object using cursor() method
cursor = db.cursor()

# Drop table if it already exist using execute() method.
cursor.execute("DROP TABLE IF EXISTS rsstracker")

# Create table as per requirement
sql = """CREATE TABLE rsstracker (
   article_title  varchar(255),
   article_url  varchar(1000),
   article_summary varchar(1000)
   summary )"""

cursor.execute(sql)

# disconnect from server
db.close()

【问题讨论】:

  • 尝试 ping your_ip 如果它无法访问,那么您需要检查您的 ip

标签: python mysql pymysql


【解决方案1】:

您应该将localhost 替换为服务器的IP 地址或主机名。如果该服务器在您的 LAN 中,您将需要其内部地址。如果它在您的网络之外,您将需要它的外部地址。

无论哪种方式,您都需要确保您使用的端口被很好地转发,并且沿途没有被路由器/防火墙阻止/过滤,包括远程服务器的操作系统上/被远程服务器的操作系统。

这个问题可能更适合superuser exchange

【讨论】:

  • 感谢我使用的教程没有提到端口。
猜你喜欢
  • 2016-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-02
  • 2011-05-06
  • 1970-01-01
  • 2019-10-16
相关资源
最近更新 更多