我是一名学生,我正在尝试将一些传感器值写入MySQL数据库。
由于IDE I将使用Inteliji。 首先是通过安装数据库Plug-in开始。
- 这是成功完成的
接下来我试图连接到数据库(见下图)
成功连接.
现在我要做的下一件事就是使用MySQL连接器。 因此,我已将MySQL安装到r-PI上并使用以下代码来实现它。
import mysql.connector
print("Step 1")
cnx = mysql.connector.connect(user='a21ib2a01',
password='secret',
host='mysql.studev.groept.be',
database='a21ib2a01')
Print("Step 2")
现在我运行代码时,终端将输出:
Step1
出于某种原因,我不知道;连接功能始终使用下一个出现的错误:
mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on 'mysql.studev.groept.be:3306' (110 Connection timed out)
那么有人知道为什么我的联系是成功的,但我无法连接吗? 长话短说,我做错了什么,我如何解决这个问题?
提前致谢!
分析解答
您的超时意味着RPI上的网络无法达到--无法找到--的路由您的MySQL主机mysql.studev.groept.be
。
如果您在RPI中的shell中执行traceroute mysql.studev.groept.be
,则可能会看到错误。
在您的RPI上的shell时,您可以在UNI网络中的任何机器中进行SSH吗?如果是这样,您可能能够使用SSH port-forwarding获取到数据库服务器的路由。
你直接在RPI上运行Intellij,或在笔记本电脑上吗?如果在笔记本电脑上运行它,它看起来像笔记本电脑可以找到到您服务器的路线,但RPI不能。
(如果这是我的项目,我会在我的笔记本电脑上安装一个MySQL服务器,以减少涉及VPN的多个跳跃的network-engineering麻烦。)