python - 无法使用 python 连接到远程 MySql 数据库
问题描述
您好,我正在尝试连接到主机上的数据库。我遵循了本教程:
https://www.thepythoncode.com/article/connect-to-a-remote-mysql-server-in-python
这是我的代码:
import pymysql.cursors
import pymysql
try:
connection = pymysql.connect(host='195.201.204.153',
user='turboweb_jobsuser',
password='TYcfvA*****',
db='turboweb_jobsdb_user',
)
print("Connected to:", connection.get_server_info())
except Exception as e:
print('connection failed')
print(e)
但是,每次我尝试连接时,都会发生此错误:
(2003, "Can't connect to MySQL server on '195.201.204.153' (timed out)")
网站地址是:
assamjobsapp.turboweb.online
在这里做一个ping,给我这个IP: 195.201.204.153
我已经从 Hosting PHPMyadmin 创建了数据库、用户和表,但我不知道如何连接到它。我应该为连接提供数据库用户名/密码还是 Cpanel 用户名/密码
请帮忙。谢谢
解决方案
正如评论所提到的,许多(大多数!)托管服务提供商在他们的数据库服务器和公共互联网之间设置了防火墙。因为网络蠕虫。尝试做防火墙禁止的事情通常会导致你得到的那种超时。
如果您想从您的笔记本电脑或提供商防火墙之外的其他机器连接到 MySQL 数据库,您必须要求他们调整防火墙规则以允许您的特定机器连接。一旦防火墙允许您的机器连接,请使用您的数据库用户名/密码建立连接。
一些提供商为此提供了自助服务用户界面,通常在他们的 cpanels 中。其他人则要求您请客户支持代理来执行此操作。
推荐阅读
- python - 启动 PyCharm 时出现 Dyld 错误消息
- sql - Django SQL - 查询返回 AttributeError 模块“__main__”没有属性“df”
- java - 将 unicode 字符串拆分为字符串列表
- c# - C#我如何从树视图中获取所有子节点的名称
- javascript - 当我将其名称作为字符串时如何执行 JavaScript 函数(带有具有重载参数的参数)
- java - 无法从 START_OBJECT 令牌中反序列化 `` 的实例
- mysql - pymysql 2-应用程序选择插入查询
- javascript - 更改按钮单击事件JS上的图表标签
- reactjs - React Js中的CKEditor 5图像上传错误
- arrays - 在函数中总是错误的