[erledigt] mySQL auf Windows Server 2012, nach Stromausfall 100% CPU Last durch mySQL

Begonnen von Frank_Huber, 17 Oktober 2019, 20:38:25

Vorheriges Thema - Nächstes Thema

DS_Starter

Ich sehe du kommst klar  8)

Nur mal für mich aus Interesse ... das war ja nun doch eine besondere Situation. Wie hat sich FHEM verhalten , lief alles normal weiter wie es sein soll ?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

schön wäre es gewesen. ;o)

set logdb_DbRep delDoublets delete
ergibt:
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC HAVING count(*) > 1' at line 1 at ./FHEM/93_DbRep.pm line 5043.

Frank_Huber

Zitat von: DS_Starter am 18 Oktober 2019, 13:05:57
Ich sehe du kommst klar  8)

Nur mal für mich aus Interesse ... das war ja nun doch eine besondere Situation. Wie hat sich FHEM verhalten , lief alles normal weiter wie es sein soll ?

FHEM lief soweit, ausser Ich hab nen Raum aufgerufen mit Plots. Dann hing FHEM so ne halbe bis dreiviertel Stunde komplett. War also blockiert.

DS_Starter

Gibts nicht,  da muss ich etwas tun und dbrep patchen, ging doch bisher  :o. Ich korrigiere das.
Dann bereinigen wir die Doubletten etwas später.
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

Hast du plotfork 1 im Fhemweb gesetzt ? Dann sollte es nämlich auch bei den Plots keine Blockierungszustände geben.
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

plotfork muss ich schauen. kanns sein dass der nicht gesetzt ist.

Brauchst Du noch irgendwelche Versionen von mir wegen dem delDoubl?

EDIT:

plotfork war auf "2", hatte wohl früher mal eine andere Bedeutung. Wird gleich überall auf "1" umgestellt.

Hab auch grad noch "nebenher" entdeckt dass ich noch nen Fehler im exclude/include einiger Geräte hatte.
über Jahre von 2 HM Strommesssteckdosen das "energyKWh" Reading geloggt. und das kam paarmal die Minute.
Bin mal gespannt wieviele Einträge der SELECT findet. *lach*


Meine Versionen:
93_DbLog.pm         20114 2019-09-06 11:21:03Z DS_Starter --> 93_DbLog.pm:v4.7.0-s20114/2019-09-06
93_DbRep.pm         20263 2019-09-27 20:37:25Z DS_Starter --> 93_DbRep.pm:v8.27.2-s20263/2019-09-27

DS_Starter

Habe delDoubl gerade bei mir ausgeführt. Läuft ohne Fehler DbRep version 8.28.1
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

Zitat von: DS_Starter am 18 Oktober 2019, 13:43:24
DbRep solltest du updaten.

Nach Update und restart das selbe:
   
DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC HAVING count(*) > 1' at line 1 at ./FHEM/93_DbRep.pm line 5054.

DS_Starter

Das wundert mich allerdings weil bei mir mit MariaDB ist es ok.
Mach mir mal ein verbose 4 von dem Befehl und ich schaue mir das heute Abend an. Finde ich etwas komisch.
Version ist jetzt auch gleiche wie meine ?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

ja, 8.28.1.

2019.10.18 13:58:19 3: DbRep logdb_DbRep - execute command before delDoublets: 'set logdb reopen 3600'
2019.10.18 13:58:19 2: DbLog logdb: Connection closed until 14:58:19 (3600 seconds).
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> ###              start of new Logcycle                       ###
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> number of events received: 1 for device: logdb
2019.10.18 13:58:19 4: DbLog logdb -> check Device: logdb , Event: state: closed until 14:58:19 (3600 seconds)
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> ###              start of new Logcycle                       ###
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> number of events received: 1 for device: logdb_DbRep
2019.10.18 13:58:19 4: DbLog logdb -> check Device: logdb_DbRep , Event: state: running
2019.10.18 13:58:19 4: DbRep logdb_DbRep - -------- New selection ---------
2019.10.18 13:58:19 4: DbRep logdb_DbRep - Command: delDoublets adviceDelete
2019.10.18 13:58:19 4: DbRep logdb_DbRep - Timestamp begin human readable: 2016-10-16 12:57:19
2019.10.18 13:58:19 4: DbRep logdb_DbRep - Timestamp end human readable: 2019-10-18 13:58:19
2019.10.18 13:58:19 4: DbRep logdb_DbRep - Aggregation: day
2019.10.18 13:58:19 4: DbRep logdb_DbRep - SQL execute: SELECT TIMESTAMP,DEVICE,READING,VALUE,count(*) FROM history where TIMESTAMP >= '2016-10-16 12:57:19' AND TIMESTAMP < '2016-10-17' GROUP BY TIMESTAMP, DEVICE, READING, VALUE ASC HAVING count(*) > 1;
2019.10.18 13:58:19 2: DbRep logdb_DbRep - DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC HAVING count(*) > 1' at line 1 at ./FHEM/93_DbRep.pm line 5054.

2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> ###              start of new Logcycle                       ###
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> number of events received: 1 for device: logdb_DbRep
2019.10.18 13:58:19 4: DbLog logdb -> check Device: logdb_DbRep , Event: errortext: DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC HAVING count(*) > 1' at line 1 at ./FHEM/93_DbRep.pm line 5054.

2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> ###              start of new Logcycle                       ###
2019.10.18 13:58:19 4: DbLog logdb -> ################################################################
2019.10.18 13:58:19 4: DbLog logdb -> number of events received: 1 for device: logdb_DbRep
2019.10.18 13:58:19 4: DbLog logdb -> check Device: logdb_DbRep , Event: state: error


DS_Starter

Die Zeiteigrenzung sieht etwas merkwürdig aus. Wie stehen denn deine Attribute im DbRep ?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

Zitat von: DS_Starter am 18 Oktober 2019, 14:08:06
Die Zeiteigrenzung sieht etwas merkwürdig aus. Wie stehen denn deine Attribute im DbRep ?
Das dürfte der erste Tag der DB sein. von daher denke ich passt das.

Attribute:
defmod logdb_DbRep DbRep logdb
attr logdb_DbRep DbLogExclude .*
attr logdb_DbRep allowDeletion 1
attr logdb_DbRep executeAfterProc set logdb reopen
attr logdb_DbRep executeBeforeProc set logdb reopen 3600
attr logdb_DbRep group MySQL
attr logdb_DbRep room SYSTEM
attr logdb_DbRep verbose 4

DS_Starter

Ja das passt, ich habe mich verwirren lassen. Hier zum Vergleich bei mir


2019.10.18 14:19:58.293 4: DbRep Rep.LogDB.All - SQL execute: SELECT TIMESTAMP,DEVICE,READING,VALUE,count(*) FROM history where TIMESTAMP >= '2019-10-16 14:19:57' AND TIMESTAMP < '2019-10-17' GROUP BY TIMESTAMP, DEVICE, READING, VALUE ASC HAVING count(*) > 1;
2019.10.18 14:19:58.699 4: DbRep Rep.LogDB.All - SQL execute: SELECT TIMESTAMP,DEVICE,READING,VALUE,count(*) FROM history where TIMESTAMP >= '2019-10-17' AND TIMESTAMP < '2019-10-18' GROUP BY TIMESTAMP, DEVICE, READING, VALUE ASC HAVING count(*) > 1;


Das läuft und ich sehe keine Unterschied in der Syntax. Gib mir mal noch deine Mysql version. Irgendwas muss ja sein.
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Frank_Huber

Zitat von: DS_Starter am 18 Oktober 2019, 14:24:07
Gib mir mal noch deine Mysql version. Irgendwas muss ja sein.
8.0.14 spuckt er mir aus. (MySQL Community Server - GPL)