微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在ESP32上安装Micropython MySQLdb

如何解决如何在ESP32上安装Micropython MySQLdb

我想将ESP32中的数据保存到网络数据库中。因此,我需要在ESP32上的Micropython中使用MysqLdb模块。我如何在这里安装?

解决方法

在ESP32到托管数据库之间运行几乎任何数据库客户端都是一个挑战(在处理能力,安全性和维护状态方面)

我建议使用ESP32将数据发送到mqtt代理,然后让其他东西(运行数据库的服务器,无服务器功能等)订阅该主题,并将所有更改写入数据库。

,

您尝试过类似https://github.com/dvrhax/uPyMySQL的事情吗? Looks like它需要编译为固件才能在ESP8266上运行。也许(未经我自己测试)足以让ESP32与mpy-cross进行交叉编译。尝试分享您的经验。

其他方法-编写API以将数据保存为PHP或任何网络语言,并使用GET / POST参数调用页面。我在托管中使用了此方法,创建了可处理GET请求(http://example.com/addData.php?temp=23.4&hum=57)的PHP脚本,并从中提取数据 (温度和湿度),并与时间戳一起写入数据库。在网页上,我还有另一个脚本可以解析数据库中的数据并制作漂亮的图表。

编辑:我最近在uPyMySQL上玩过ESP-32通用(无PSRAM),可以分享我的发现。库对我来说不起作用-我必须进行多次编辑才能使其与我自己编译的LVGL Micropython固件一起使用。我不得不将少数文件交叉编译为mpy格式,因为加载库时我的微控制器内存不足。

当我最终决定连接数据库时,它确实可以工作。无论如何,Lib在列类型(int,varchar,datetime)处理方面存在一些缺陷,因为某些逻辑未移植到Micropython中,但希望它是可修复的。 Lib具有调试模式,如果您想了解后台发生了什么,那巫婆会很好。

但是不要期望查询大数据集。我一直在玩带有日期时间,温度,湿度,CO2列的表。当选择100个记录限制控制器超出存储器中,约60-70记录它的工作原理。

插入工作正常,只有最后必须执行commit命令。

,

如果您的服务器中包含php,那么您可以将数据发送到php并编写代码以将经过还原的数据存储在MySQL数据库中。 试试吧,让我知道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?