<GELÖST> Datenbankproblem

Begonnen von Kaspi, 02 September 2023, 10:15:00

Vorheriges Thema - Nächstes Thema

Kaspi

Moin,

irgendwie wird nichts mehr in meine Dantenbank geschrieben.
Lt. LOG Meldungen in der Art von:
Zitat2023.09.02 10:11:36 2: myDbLog - Error table history - DBD::SQLite::st execute_array failed: executing 802 generated 184 errors [for Statement "INSERT INTO history (TIMESTAMP, DEVICE, TYPE, EVENT, READING, VALUE, UNIT) VALUES (?,?,?,?,?,?,?)"] at ./FHEM/93_DbLog.pm line 3214.

Was bedeutet das?
Was kann ich tun?

Gruß
Kaspi


Otto123

Zitat von: Kaspi am 02 September 2023, 10:15:00Was kann ich tun?
Den Beitrag verschieben damit der Helfer dich findet:
help dblog ergibt Module: 93_DbLog.pm Maintainer: DS_Starter Forum: Automatisierung
Der Verschieben Knopf sitzt links unten. ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

DS_Starter

schon gefunden  :)

Habe leider jetzt keine Zeit. Deswegen Schnellösung:

1. Attr insertMode=1 setzen

Schauen ob Daten geschrieben werden. Mit verbose=4 bzw. 5 sieht man die "schwierigen" Daten.
Wenn das nicht hilft:

2. vorsorglich Attr useCharfilter=1 setzen

FHEM restarten.
Morgen habe ich wieder Zeit.

Und ja-> Thema verschieben  ;)
ESXi 6.5 @NUC6i5SYH+FHEM auf Debian, DbLog/DbRep MariaDB
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

Kaspi

LOG:

Zitat2023.09.02 13:40:42 4: myDbLog - ################################################################
2023.09.02 13:40:42 4: myDbLog - ###              start of new Logcycle                       ###
2023.09.02 13:40:42 4: myDbLog - ################################################################
2023.09.02 13:40:42 4: myDbLog - number of events received: 1 of device: myDbLog
2023.09.02 13:40:42 4: myDbLog - check Device: myDbLog , Event: CacheOverflowLastNum: 0
2023.09.02 13:40:42 4: myDbLog - Operation: log_asynch
2023.09.02 13:40:42 4: myDbLog - AutoCommit: ON, Transaction: ON
2023.09.02 13:40:42 4: myDbLog - Primary Key used in history: none
2023.09.02 13:40:42 4: myDbLog - Primary Key used in current: none
2023.09.02 13:40:42 4: myDbLog - Insert mode: Sequential
2023.09.02 13:40:42 4: myDbLog - begin Transaction
2023.09.02 13:40:42 2: myDbLog - ERROR table history - DBD::SQLite::st execute failed: database disk image is malformed [for Statement "INSERT INTO history (TIMESTAMP, DEVICE, TYPE, EVENT, READING, VALUE, UNIT) VALUES (?,?,?,?,?,?,?)"] at ./FHEM/93_DbLog.pm line 2920.

2023.09.02 13:40:42 4: myDbLog - Transaction is switched on. Transferred data is returned to the cache.
2023.09.02 13:40:42 4: myDbLog - Transaction rollback table >history<
2023.09.02 13:40:43 4: myDbLog - ################################################################
2023.09.02 13:40:43 4: myDbLog - ###              start of new Logcycle                       ###
2023.09.02 13:40:43 4: myDbLog - ################################################################


betateilchen

ERROR table history - DBD::SQLite::st execute failed: database disk image is malformed

DbRep hat eine Option, das zu reparieren:

ZitatRepair of a corrupted SQLite database ("database disk image is malformed")

Schau mal in die commandref zu DbRep, dort unter "repairSQLite"
-----------------------
Mach es möglichst simpel und mach es richtig,
dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Kaspi

Kam folgendes bei raus:

ZitatSTATE
DBD::SQLite::db prepare failed: no such table: history at ./FHEM/93_DbLog.pm line 5005.


betateilchen

Die Meldung ist ja recht eindeutig.

Lege die Datenbank neu an und spiele das letzte Backup von letzter Nacht ein.
-----------------------
Mach es möglichst simpel und mach es richtig,
dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Kaspi

#7
Hat funktioniert.
Danke 👍💐