请求大佬帮忙看看,是ESP8266连接MySQL的问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 668|回复: 1

[过期] 请求大佬帮忙看看,是ESP8266连接MySQL的问题

[复制链接]
发表于 2022-4-3 11:57 | 显示全部楼层 |阅读模式
本帖最后由 希夷 于 2022-4-9 23:30 编辑

我现在遇到的问题是:使用Arduino上下载的MySQL的类库里的示例代码,使用ESP8266连接MySQL数据库并在表中插入测试数据,在串口上显示WiFi连接成功但是数据库连接失败
  1. #include <ESP8266WiFi.h>           // Use this for WiFi instead of Ethernet.h
  2. #include <MySQL_Connection.h>
  3. #include <MySQL_Cursor.h>
  4. IPAddress server_addr(192,168,1,3);  // 这个是我自己电脑的ip地址
  5. char user[] = "root";              // MySQL user login username
  6. char password[] = "123456";        // MySQL user login password
  7. // Sample query
  8. char INSERT_SQL[] = "INSERT INTO test.mess (message) VALUES ('Hello, Arduino!')";
  9. // WiFi card example
  10. char ssid[] = "CU_cJt5";         // your SSID
  11. char pass[] = "nv4q5vzz";     // your SSID Password
  12. WiFiClient client;                 // Use this for WiFi instead of EthernetClient
  13. MySQL_Connection conn(&client);
  14. MySQL_Cursor* cursor;
  15. void setup()
  16. {
  17.   Serial.begin(115200);
  18.   while (!Serial); // wait for serial port to connect. Needed for Leonardo only
  19.   // Begin WiFi section
  20.   Serial.printf("\nConnecting to %s", ssid);
  21.   WiFi.begin(ssid, pass);
  22.   while (WiFi.status() != WL_CONNECTED) {
  23.     delay(500);
  24.     Serial.print(".");
  25.   }
  26.   // print out info about the connection:
  27.   Serial.println("\nConnected to network");
  28.   Serial.print("My IP address is: ");
  29.   Serial.println(WiFi.localIP());
  30.   Serial.print("Connecting to SQL...  ");
  31.   Serial.println(server_addr);
  32.   if (conn.connect(server_addr, 3306, user, password)) //在这一步执行连接的时候总是失败
  33.     Serial.println("OK.");
  34.   else
  35.     Serial.println("FAILED.");
  36.   // create MySQL cursor object
  37.   cursor = new MySQL_Cursor(&conn);
  38. }
  39. void loop()
  40. {
  41.   if (conn.connected())
  42.     cursor->execute(INSERT_SQL);
  43.   delay(5000);
  44. }
复制代码
我在自己的MySQL中用我自己电脑的ip地址可以登入MySQL但是通过ESP8266却失败了,我想请教一下原因。

发表于 2022-9-7 00:19 | 显示全部楼层
防火墙和端口的问题试过了吗?用另一台电脑在同一个局域网内访问你的电脑的数据库试试。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-1 01:31 , Processed in 0.130251 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表