通过 ESP8266 在 Raspberry Pi(3 和零)上访问 MySQL 的问题
Issues accessing MySQL on Raspberry Pi (3 & Zero) through ESP8266
不确定这是否是打开此主题的正确位置,但我会试一试。
最近我在我的(两个)Raspberry Pi(一个是 raspberry Pi 3 B 和一个零)上遇到了意外行为。
我尝试了以下配置:
- RasPi Zero 通过 eth0 连接到路由器。它用它的wlan0打开一个WiFi(参考:https://www.raspberrypi.org/documentation/configuration/wireless/access-point-routed.md)。
一个。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“家庭 Wifi”,两者都可以访问 MySQL (MariaDB) 数据库。
b。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“RasPi Wifi”,则只有笔记本电脑可以访问 MySQL (MariaDB) 数据库。 ESP82866 与数据库的连接被“阻塞”但没有错误消息。
我做了一个草图你可以参考:Configuration 1 (with RasPi Zero)
- RasPi 3 通过 wlan1 连接到路由器。它用它的wlan0打开一个WiFi(参考:https://www.raspberrypi.org/documentation/configuration/wireless/access-point-routed.md)。
一个。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“家庭 Wifi”,两者都可以访问 MySQL (MariaDB) 数据库。
b。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“RasPi Wifi”,则只有笔记本电脑可以访问 MySQL (MariaDB) 数据库。 ESP82866 与数据库的连接被“阻塞”但没有错误消息。
看我的草图:Configuration 2 (with RasPi 3)
谁遇到过sam问题?根据我的理解,笔记本电脑 (MacBook Pro) 可以通过 Python 访问连接到任何网络的数据库并使用 phpmyadmin 是没有意义的。 ESP只有在“家庭网络”时才能连接到数据库ESP上的代码运行除了SSID和MySQL服务器的IP地址之外总是相同的。
谢谢。
亚历克斯
我尝试了很多解决方法和其他想法来解决这个问题。喜欢分享我做的一些经验(可惜不能100%理解)。
如果 ESP(试用了 NodeMCU、WemosD1 mini 和 ESP12F)连接到由 Raspberry Pi 到 hostapd
提供的 WiFi,它不能 ping/access 该网络内的任何设备。我不明白为什么,因为任何其他设备(例如 RasPi 或笔记本电脑)都可以 ping ESP。
但是 ESP 可以连接到其自身网络之外的设备。例如。可以ping通RasPi的第二个IP地址。
在我的示例中,ESP 接收 IP 192.168.4.96
(来自 RasPi 的 DHCP,hostapd
由 wlan0
提供)。它可以 Ping 同一个 RasPi 的 wlan1
IP 192.168.188.37
.
有了这个小小的成功,ESP 就可以访问 RasPi 上的数据库了。 (按照 The Impaler 的提示 - 使用 GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
)。
主要问题仍然悬而未决:是否有针对我面临的最初问题的解释和解决方案 - 无法访问数据库/ESP 连接到的网络中的任何其他设备?
不确定这是否是打开此主题的正确位置,但我会试一试。
最近我在我的(两个)Raspberry Pi(一个是 raspberry Pi 3 B 和一个零)上遇到了意外行为。
我尝试了以下配置:
- RasPi Zero 通过 eth0 连接到路由器。它用它的wlan0打开一个WiFi(参考:https://www.raspberrypi.org/documentation/configuration/wireless/access-point-routed.md)。
一个。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“家庭 Wifi”,两者都可以访问 MySQL (MariaDB) 数据库。
b。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“RasPi Wifi”,则只有笔记本电脑可以访问 MySQL (MariaDB) 数据库。 ESP82866 与数据库的连接被“阻塞”但没有错误消息。
我做了一个草图你可以参考:Configuration 1 (with RasPi Zero)
- RasPi 3 通过 wlan1 连接到路由器。它用它的wlan0打开一个WiFi(参考:https://www.raspberrypi.org/documentation/configuration/wireless/access-point-routed.md)。
一个。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“家庭 Wifi”,两者都可以访问 MySQL (MariaDB) 数据库。
b。如果我将笔记本电脑或 ESP8266 NodeMCU 连接到“RasPi Wifi”,则只有笔记本电脑可以访问 MySQL (MariaDB) 数据库。 ESP82866 与数据库的连接被“阻塞”但没有错误消息。
看我的草图:Configuration 2 (with RasPi 3)
谁遇到过sam问题?根据我的理解,笔记本电脑 (MacBook Pro) 可以通过 Python 访问连接到任何网络的数据库并使用 phpmyadmin 是没有意义的。 ESP只有在“家庭网络”时才能连接到数据库ESP上的代码运行除了SSID和MySQL服务器的IP地址之外总是相同的。
谢谢。
亚历克斯
我尝试了很多解决方法和其他想法来解决这个问题。喜欢分享我做的一些经验(可惜不能100%理解)。
如果 ESP(试用了 NodeMCU、WemosD1 mini 和 ESP12F)连接到由 Raspberry Pi 到
hostapd
提供的 WiFi,它不能 ping/access 该网络内的任何设备。我不明白为什么,因为任何其他设备(例如 RasPi 或笔记本电脑)都可以 ping ESP。但是 ESP 可以连接到其自身网络之外的设备。例如。可以ping通RasPi的第二个IP地址。
在我的示例中,ESP 接收 IP 192.168.4.96
(来自 RasPi 的 DHCP,hostapd
由 wlan0
提供)。它可以 Ping 同一个 RasPi 的 wlan1
IP 192.168.188.37
.
有了这个小小的成功,ESP 就可以访问 RasPi 上的数据库了。 (按照 The Impaler 的提示 - 使用 GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
)。
主要问题仍然悬而未决:是否有针对我面临的最初问题的解释和解决方案 - 无法访问数据库/ESP 连接到的网络中的任何其他设备?