如何使用RaspberryPi在Python中连接到MySQL数据库

fdx2calv  于 12个月前  发布在  Mysql
关注(0)|答案(1)|浏览(87)

我是一名学生,我试图将一些传感器值写入MySQL数据库。
作为IDE,我将使用Inteliji。首先,我开始安装数据库插件。

  • 这一点做得很成功

接下来我尝试连接到数据库(见下图)
Figure of successful connection
现在,我想做的下一件事是使用MySQL连接器。因此我在r-PI上安装了MySQL,并使用以下代码来实现它。

import mysql.connector
print("Step 1")
cnx = mysql.connector.connect(user='user', 
                              password='secret',
                              host='host',
                              database='db')
Print("Step 2")

字符串
当我现在运行我的代码时,终端将输出:

Step1


不知为何connect函数总是在下一个错误发生时超时:

mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on 'mysql.studev.groept.be:3306' (110 Connection timed out)


那么有谁知道为什么我的连接成功了,但我却无法连接到它?长话短说,我做错了什么,我该如何解决这个问题?
提前感谢!

qoefvg9y

qoefvg9y1#

超时意味着rPi上的网络无法到达--无法找到到MySQL主机mysql.studev.groept.be的路由。
如果你在rPi的shell中执行traceroute mysql.studev.groept.be,你可能会发现问题所在。
在rPi的shell中,你可以ssh到你大学网络中的任何机器上吗?如果是这样,您可以使用ssh端口转发来获得到数据库服务器的路由。
您是直接在rPi上运行intelliJ,还是在笔记本电脑上运行intelliJ?如果你在笔记本电脑上运行它,看起来笔记本电脑可以找到到你的服务器的路由,但rPi不能。
(If这是我的项目,我会在我的笔记本电脑上安装一个MySQL服务器,以减少通过涉及VPN的多跳连接的网络工程麻烦。

相关问题