Я изо всех сил пытаюсь получить соединение с моей локальной базой данных MySQL, которая находится на сервере LAMP, я пытался установить соединение с Arduino WiFi Rev.2, Arduino Yùn Rev.1, обычным Arduino UNO, подключенным ESP8266 и даже ESP-32. Я сделал пользователя в MySQL, которому разрешено подключаться только с IP-адреса, который имеет Arduino, но что бы я ни пытался со стороны клиента или сервера, я не могу заставить его работать.
Я просто использую небольшой набросок, который я сделал для подключения Arduino UNO WiFi Rev.2 к серверу, я использую библиотеку MySQL , сделанную Dr. Чарльз Белл . и я прочитал, хотя его руководство для lib и все, но все же, оно не будет работать.
Вот мой код для подключения:
#include <SPI.h>
#include <WiFiNINA.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>
#include "arduino_passwds.h"
#include "arduino_usrs.h"
char ssid[] = SECRET_SSID;
char pass[] = SECRET_PASS;
byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress server_addr(127,0,0,1); //I am not using the local IP of the server in the original sketch.
char user[] = "MyUser"; // MySQL user login username
char password[] = "MyPasswd"; // MySQL user login password
int status = WL_IDLE_STATUS;
WiFiClient client;
MySQL_Connection conn((Client *)&client);
void setup()
{
Serial.begin(9600);
while (!Serial)
{
;
}
if (WiFi.status() == WL_NO_MODULE)
{
Serial.println("Communication with WiFi module failed!");
while (true);
}
while (status != WL_CONNECTED)
{
Serial.print("Attempting to connect to WPA SSID: ");
Serial.println(ssid);
status = WiFi.begin(ssid, pass);
delay(10000);
}
Serial.println("You're connected to the network");
printCurrentNet();
printWifiData();
Serial.println("Connecting to DB...");
if (conn.connect(server_addr, 3306, user, password))
{
delay(1000);
Serial.println("Success!");
}
else
{
Serial.println("Failed to connect to DB");
conn.close();
}
}
void loop()
{
delay(5000);
}
Если вам нужна дополнительная информация просто спроси, а я плохо обеспечу.