Hallo Alex,

 

Danke für Deine Unterstützung und ich konnte es heute implementieren.

 

Der SQL-Befehl war ja getestet und lief recht flott (z.B. script.sql) nach dem 
Schema:

 

DELETE FROM `volkszaehler`.`data` WHERE (`channel_id` IN (x,y,z))

AND timestamp> (unix_timestamp(current_timestamp)-24*60*60)*1000

AND (VALUE <-5 or VALUE >40);

 

Hatte jedoch große Probleme die Datei (/home/pi/script.sql) auszuführen.

 

Manuelle versuche durch:

 

mysql –uvz -pdemo volkszaehler < /home/pi/script.sql

 

Gaben eine Fehlermeldung  Richtung syntax.

 

mysql –uvz -pdemo < /home/pi/script.sql

mysql –upi -praspberry < /home/pi/script.sql

 

wurde mit Access denied for user pi  abgebrochen, trotz beide user alle sql 
berechtigungen hatten und die Datei script.sql auf Rechte 7777 gestellt wurde

 

Einzige Möglichkeit für mich zu testen:

 

sudo mysql < /home/pi/script.sql

 

und das lief.  Im crontab läuft es sogar mit sudo oder besser nur mit sudo:

 

*/60 * * *  sudo mysql < /home/pi/script.sql

 

Sicher nicht ideal aus Rechtesicht aber läuft.

 

Danke und viele Grüße

 

 

Von: volkszaehler-users <volkszaehler-users-boun...@demo.volkszaehler.org> Im 
Auftrag von r...@nord-com.net
Gesendet: Dienstag, 28. Januar 2020 12:16
An: 'volkszaehler.org - users' <volkszaehler-users@demo.volkszaehler.org>
Betreff: Re: [vz-users] 1-Wire Messwerte Filtern/Löschen

 

Hallo Rasf,

 

>Noch ein Punkt, da ich verschiedene Antworten finde im Netz. Wo sollte ich das 
>Script speichern?

>Hatte an das home Verzeichnis gedacht und dort nen Ordner scripte erstellen:

> 

>* */1 * * * /home/scripte/sql.sh

 

Wie schonmal gesagt, der Eintrag in der Crontab könnte in etwa so aussehen:

 

0 3 * * *  mysql –uvz -pdemo volkszaehler < /home/pi/sql/meinskript.sql

 

Ein Shell-Skript brauchst Du dazu nicht. In das .sql dann alle Anfragen 
nacheinander, jede Anfrage mit einem Semikolon (;) beenden. 

 

Gruss,

Alex

Antwort per Email an