首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ESP8266WiFi芯片连接到MySQL数据库

使用ESP8266WiFi芯片连接到MySQL数据库
EN

Stack Overflow用户
提问于 2020-10-21 22:45:06
回答 1查看 54关注 0票数 0

我正在尝试直接从我的arduino连接到远程MySQL数据库,以便在一些硬件上执行一些遥测。然而,代码在连接到数据库时被卡住了,并且总是给出“找不到数据库”的答案。我哪里错了?

我确信我对user/pass的理解是正确的,但是我真的不明白为什么它不能连接到db来执行查询。

代码语言:javascript
复制
#include <ESP8266WiFi.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

char ssid[] = "mywifissid";
char pass[] = "mywifipass";
char mysqlUser[] = "mysqluser";
char mysqlPass[] = "mysqlpassword";
char id[] = "someidforthearduino";
WiFiClient wifiClient;
MySQL_Connection mysqlConnection ((Client *)&wifiClient);
IPAddress mysqlServer (/*some kind of address for the mySQL server*/);
bool is_Sending = false;
char queryToExecute[128];
char queryUpdate[] = "somequery";
int nPresses = 0;

void setup() {
  Serial.begin(115200);
  Serial.println("Inizializzazione pin in corso...");
  pinMode(D4, INPUT_PULLUP);
  Serial.println("Connessione alla rete in corso...");
  WiFi.disconnect();
  WiFi.begin(ssid,pass);
  while(WiFi.status() != WL_CONNECTED) {
    delay(200);
    Serial.print(".");
  }
  Serial.println("");
  Serial.print("Connesso con ip ");
  Serial.println(WiFi.localIP());
  Serial.println("Inizializzazione completata");
}

void loop() {
 if (!digitalRead(D4) && !is_Sending) {
    is_Sending = true;
    nPresses++;
    Serial.println("Rilevata pressione tasto. Connessione in corso...");
    if (mysqlConnection.connect(mysqlServer,3306,mysqlUser,mysqlPass)) {
      Serial.println("");
      Serial.println("Connesso. Inserimento dato...");
      sprintf(queryToExecute, queryUpdate, nPresses, id);
      MySQL_Cursor *c = new MySQL_Cursor(&mysqlConnection);
      c->execute(queryToExecute);
      delete c;
      Serial.println("Aggiornamento effettuato!");  
    } else {
      Serial.println("No db found.");
    }
    mysqlConnection.close();
    is_Sending = false;
    
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-21 23:07:00

我想通了。代码是正确的,我只是输入了错误的MySQL服务器的IP!我通过打开命令提示符并pinging主机名来发现它;

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64466096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档