connect mysql resolve problem und zuweisung der IP für ethernet


hallo

ich versuche gerade ein paar lösungsansätze für lese/schreib-aktionen auf einer im lokalen netz befindlichen mysql-db zu finden und bin dabei auf die bibliothek mysql.h  von http://drcharlesbell.blogspot.de/2013/04/introducing-mysql-connectorarduino_6.html
gestoßen.

ich vermute das diese eigentlich das macht ich suche, direkt in eine mysql-db schreiben und werte aus dieser holen ohne dabei umständlich ein php-script mit url-Übergaben benutzen zu müssen.

leider stoße ich gerade jetzt auf probleme mit der zuweisung einer festen ip-adresse für den arduino

ich benutze folgende hardware

- arduino mega r3 (dieser sollte die ip 192.168.2.105 haben)
- raspberry pi (dieser hat die ip 192.168.2.104)
auf dem raspberry läuft die mysql-db und der webserver
die user sind in der mysql-db angelegt und lassen zugriffe von 192.168.2.105 und localhost zu.
den mysqld habe ich mit bind-address 127.0.0.1 und 192.168.2.104 gebunden.

folgende probleme tauchen auf.

obwohl in meinem sketch
byte ip[] = { 192, 168, 2, 105 };
angegeben wurde,
wird dem arduino die ip-adresse
192.168.2.106 zugewiesen
wieso?
ich habe den arduino neu gestartet usw. nichts hilft

code: [select]
/**
* example: hello, mysql!
*
* code module demonstrates how create simple
* database-enabled sketch.
*/
#include "spi.h"
#include "ethernet.h"
#include "sha1.h"
#include "mysql.h"

/* setup ethernet library */
byte mac[] = { 0xde, 0xad, 0xbe, 0xef, 0xfe, 0xed };
byte server[] = { 192, 168, 2, 104};
byte ip[] = { 192, 168, 2, 105 };

/* setup connector/arduino */
connector my_conn; // connector/arduino reference

char user[] = "meinuser";
char password[] = "meinpasswort";
char insert_sql[] = "insert test.test_db (`temp`) values (13)";

void setup() {
 ethernet.begin(mac, ip);
 serial.begin(9600);
 delay(1000);
 serial.println("connecting...");
 if (my_conn.mysql_connect(server, 3306, user, password))
 {
   delay(500);
    /* write hello, world mysql table test_arduino.hello */
     serial.println("connection ok success!");
    my_conn.cmd_query(insert_sql);
    serial.println("query success!");
 }
 else
   serial.println("connection failed.");
}

void loop() {
}


wenn dann doch mal ein connect zustande kommt dann meckert der mysqld und meint das er die ip 192.168.2.105 nicht auflösen kann
skip-host-cache
skip-name-resolve

haben auch nichts gebracht

weiss jemand ich hier grundlegendes falsch mache?

gruß jürgen

direkt das binäre-mysql protokoll zu sprechen halte ich aus verschiedenen gründen für eine sehr ungute idee.

zu einem mysql server gehört meist noch etwas auf dem ein webserver läuft. du hast nicht zufällig noch einen webserver mit php auf der gleichen maschine? das würde die sache extrem vereinfachen, wenn du einfach mit nem php script arbeiten würdest.


Arduino Forum > International > Deutsch (Moderator: uwefed) > connect mysql resolve problem und zuweisung der IP für ethernet


arduino

Comments

Popular posts from this blog

opencv3, tbb and rasp pi 2 - Raspberry Pi Forums

small ethernet problem - Raspberry Pi Forums

Multithumb configuration params not working? - Joomla! Forum - community, help and support